html做一个画热图的软件

news2025/1/18 2:10:58

完整示例

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>热图生成器</title>
    <script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
    <style>
        body {
            font-family: Arial, sans-serif;
        }
        #inputContainer {
            margin-bottom: 20px;
        }
        textarea {
            width: 100%;
            height: 100px;
        }
        button {
            margin-top: 10px;
        }
        #heatmap {
            width: 100%;
            height: 500px;
        }
    </style>
</head>
<body>
    <h1>热图生成器</h1>
    <div id="inputContainer">
        <label for="dataInput">请输入数据(以逗号分隔,每行表示一行数据):</label>
        <textarea id="dataInput">1,20,30\n20,1,60\n30,60,1</textarea>
        <br>
        <button onclick="generateHeatmap()">生成热图</button>
    </div>
    <div id="heatmap"></div>

    <script>
        function generateHeatmap() {
            // 获取输入的数据
            const inputData = document.getElementById('dataInput').value;
            
            // 解析数据
            const rows = inputData.split('\n');
            const z = rows.map(row => row.split(',').map(Number));

            // 定义热图数据
            const data = [
                {
                    z: z,
                    type: 'heatmap'
                }
            ];

            const layout = {
                title: '生成的热图',
                xaxis: {
                    title: '列'
                },
                yaxis: {
                    title: '行'
                }
            };

            // 绘制热图
            Plotly.newPlot('heatmap', data, layout);
        }
    </script>
</body>
</html>

说明

  1. 引入Plotly.js库:在<head>标签中,通过<script>标签引入Plotly.js库。
  2. 输入数据的文本区域:在<div id="inputContainer">中添加一个<textarea>供用户输入数据。
  3. 生成热图的按钮:添加一个按钮,点击按钮时会调用generateHeatmap函数。
  4. 生成热图的函数
    • <textarea>中获取用户输入的数据。
    • 将输入的数据按行拆分,并将每行数据按逗号拆分成数组。
    • 使用这些数据生成热图。
    • 使用Plotly.js的Plotly.newPlot函数将热图绘制到<div id="heatmap">中。

使用方法

  1. 将上述代码保存为一个HTML文件(例如heatmap_generator.html)。
  2. 在浏览器中打开该文件。
  3. 在文本区域中输入数据,每行代表一行数据,数据项之间用逗号分隔。例如:
    1,20,30
    20,1,60
    30,60,1
    
  4. 点击“生成热图”按钮,热图将会显示在页面中。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1853345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java的学生成绩管理系统

你好呀&#xff0c;我是计算机学姐码农小野&#xff01;如果有相关需求&#xff0c;可以私信联系我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;Java技术&#xff0c;B/S结构 工具&#xff1a;MyEclipse&#xff0c;MySQL 系统展示 首页 个人中…

TDA4VH高速路线指南和接口设计概要

TDA4VH 高速链路设计指南阅读及考虑 0、说明 本人目前做相关域控制器相关内容&#xff0c;目前正在研究TDA4的开发&#xff0c;目前正在对高速电路的的相关设计进行考虑&#xff0c;下面对TI官方提供的高速电路的设计的开发文档进行学习和分享: 1、高速系统架构介绍及PCB阻抗…

【C语言】顺序表(下卷)

本文继续讲顺序表上卷未讲完的相关内容。&#xff08;简短的补充&#xff09; 在指定位置之前插入数据 test.c SeqList.c SeqList.h //在指定位置之前插入数据 void SLInsert(SL* ps, int pos, SLDataType x);在指定位置删除数据 test.c SeqList.c SeqList.h //在指定位…

跨平台免费流程图(思维导图)制作工具 draw.io v24.6.3(可离线)

在当今快节奏的工作环境中&#xff0c;有效地传达复杂信息和工作流程至关重要。流程图和思维导图是两种强大的视觉工具&#xff0c;它们帮助我们清晰地表达想法&#xff0c;理解复杂的系统&#xff0c;并协作完成项目。可以帮助我们清晰地展示信息和逻辑关系。然而&#xff0c;…

无需破解,打开就是旗舰版!

在当今快节奏的工作环境里&#xff0c;有效的视觉沟通变得至关重要。流程图、思维导图、组织结构图等图表能够帮助我们以清晰、直观的方式传达复杂信息。而Wondershare Edraw Max正是这样一款强大的绘图工具&#xff0c;它能够帮助用户轻松创建各种专业图表。 软件链接&#x…

Spring Boot 快速入门2 ——SpringBoot运行原理分析

一、SpringBoot运行原理 父依赖 我们再查看 Spring Boot 项目中 pom.xml 可以看出&#xff0c;所有的 Spring Boot 项目 直接或间接的 依赖于一个 父项目 spring-boot-starter-parent &#xff0c;主要是管理项目的资源及其插件。 <parent><groupId>org.sprin…

Linux 时区设置函数 tzset()【man 3 tzset】

1. NAME&#xff08;名&#xff09; tzset, tzname, timezone, daylight - 初始化时间转换信息 2. SYNOPSIS&#xff08;概要&#xff09; #include <time.h>void tzset(void);extern char *tzname[2]; extern long timezone; extern int daylight;glibc的功能测试宏要…

Uniapp在屏幕尺寸低于960出现样式错乱(开箱即用)

我司项目突然要做平板兼容,我在调试的时候发现当屏幕尺寸低于960px发现样式但凡是以rpx单位的全部失效&#xff0c;如果是以px为单位那么影响就比较小&#xff0c;当时解决方案是写了不少媒体查询和把单位rpx改成px&#xff0c;后面查阅文档发现大错特错宽屏适配只需一行代码即…

2024.06.22 刷题日记

199. 二叉树的右视图 这道题目的思路就是层次遍历&#xff0c;然后每次处理每一层所有的元素&#xff0c;如果是第一个就收集到答案中&#xff1a; class Solution { public:vector<int> rightSideView(TreeNode* root) {if (!root)return {};queue<TreeNode*> q…

Kubernetes Ingress 简介

前言 Ingress 是 Kubernetes 中的一种资源对象&#xff0c;用于管理从集群外部到内部服务的 HTTP 和 HTTPS 路由。它提供了灵活的路由功能、SSL/TLS 终止、负载均衡和虚拟主机支持。Ingress 需要一个 Ingress 控制器来实际处理路由&#xff0c;并且可以通过配置不同的控制器来…

这4个手机应用,让你的生活工作更加方便

MillimeterPro MillimeterPro是一款适用于iPhone或iPad的测量工具应用&#xff0c;用户可以通过触摸屏快速进行长度测量、分割物体、测量物体比例&#xff08;W/H&#xff09;和面积等操作。 这款应用程序是一个多功能的测量工具&#xff0c;它可以帮助您在手机或平板电脑的屏…

(经验)高考填报志愿,有哪些坑你需要避开?

高考年年考&#xff0c;填报志愿的却年年都是新手.....哪些关于高考填报志愿的坑&#xff0c;依旧还继续坑....是时候做些改变了。过来人写的几点避坑&#xff0c;希望给这届新人做参考。 1、不要什么热门就报什么&#xff0c;因为有些东西别人学得很快&#xff0c;而我慢的像蜗…

示例:WPF中使用IsAsync的方式绑定数据来优化用户体验

一、目的&#xff1a;开发过程中&#xff0c;有时需要绑定大量数据&#xff0c;比如弹出一个窗口&#xff0c;窗口中包含一个ListBox绑定了大量数据&#xff0c;这时会出现点击按钮后出现假死卡顿影响用户体验&#xff0c;这理通过用IsAsync的方式将窗口优先弹出来再加载数据 二…

mysql高级语句2存储过程

CREATE VIEW 视图&#xff0c;可以被当作是虚拟表或存储查询。 视图跟表格的不同是&#xff0c;表格中有实际储存数据记录&#xff0c;而视图是建立在表格之上的一个架构&#xff0c;它本身并不实际储存数据记录。 临时表在用户退出或同数据库的连接断开后就自动消失了&…

计算机网络 静态路由及动态路由RIP

一、理论知识 1.静态路由 静态路由是由网络管理员手动配置在路由器上的固定路由路径。其优点是简单和对网络拓扑变化不敏感&#xff0c;缺点是维护复杂、易出错&#xff0c;且无法自动适应网络变化。 2.动态路由协议RIP RIP是一种基于距离向量的动态路由协议。它使用跳数作…

Unity Meta Quest 开发:关闭 MR 应用的安全边界

社区链接&#xff1a; SpatialXR社区&#xff1a;完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子 &#x1f4d5;教程说明 这期教程我将介绍如何在应用中关闭 Quest 系统的安全边界。 视频讲解&#xff1a; https://www.bilibili.com/video/BV1Gm42157Zi 在 Unity…

示例:推荐一个应用Adorner做的表单对话框

一、目的&#xff1a;开发过程中经常会修改和查看一个Model的数据&#xff0c;一般情况下会自定义一个控件或Window去显示Model数据&#xff0c;但这种数据如果比较多会增加很多开发工作&#xff0c;本文介绍一种通用的方式&#xff0c;应用表达Form控件去简化处理&#xff0c;…

如何在Qt Designer中管理QSplitter

问题描述 当按下按钮时&#xff0c;我希望弹出一个对话框&#xff0c;用户可以在其中选择内容并最终按下 ‘Ok’ 按钮。我想在这个对话框中放置一个 QSplitter&#xff0c;左侧面板将显示树状结构&#xff0c;右侧将显示其他内容。如何正确实现这一点&#xff1f; 从 Qt 的示…

AI智能时代:ChatGPT如何在金融市场发挥策略分析与预测能力?

文章目录 一、ChatGPT在金融策略制定中的深度应用客户需求分析与定制化策略市场动态跟踪与策略调整策略分析与优化 二、ChatGPT在算法交易中的深度应用自动交易策略制定交易执行与监控风险管理 三、未来展望《智能量化&#xff1a;ChatGPT在金融策略与算法交易中的实践》亮点内…

说说 SSL 的错误认识和不足之处

最近明月在学习折腾 LNMP 期间无意中建了一个 Typecho 的博客小站&#xff0c;近一周的折腾下来&#xff0c;收获真的不少&#xff0c;致使兴趣也越来越浓了&#xff0c;在升级 LNMP 的时候捎带手的给这个 Typecho 博客也启用了 SSL。并且开启了 memcached 和 OPcache 优化加速…