Pyecharts直角坐标系图:热力图

大漠聊AI工程-如何根据离散坐标绘制热力图,你需要的都在这 本文章主要是介绍在AI领域最常用的空间热力图,以及如何根据离散的坐标来绘制热力图。快来一起看看,彻底破解神秘的热力图... 阅读详情

Pyecharts直角坐标系图:热力图



前言

本文主要是展示了Pyecharts热力图的基本应用和简单案例。


一. HeatMap:热力图

1.1 add 函数

主要是:名称,数据,x轴的索引,配置项。

# func pyecharts.charts.HeatMap.add_yaxis
def add_yaxis(
    # 系列名称,用于 tooltip 的显示,legend 的图例筛选。
    series_name: str,

    # Y 坐标轴数据
    yaxis_data: types.Sequence[types.Union[opts.HeatMapItem, dict]],

    # 系列数据项
    value: types.Sequence[types.Union[opts.HeatMapItem, dict]],

    # 是否选中图例
    is_selected: bool = True,

    # 使用的 x 轴的 index,在单个图表实例中存在多个 x 轴的时候有用。
    xaxis_index: Optional[Numeric] = None,

    # 使用的 y 轴的 index,在单个图表实例中存在多个 y 轴的时候有用。
    yaxis_index: Optional[Numeric] = None,

    # 标签配置项,参考 `series_options.LabelOpts`
    label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

    # 标记点配置项,参考 `series_options.MarkPointOpts`
    markpoint_opts: Union[opts.MarkPointOpts, dict, None] = None,

    # 标记线配置项,参考 `series_options.MarkLineOpts`
    markline_opts: Union[opts.MarkLineOpts, dict, None] = None,

    # 提示框组件配置项,参考 `series_options.TooltipOpts`
    tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

    # 图元样式配置项,参考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)

1.2 热力图数据项

主要是:名称,数据项值,提示框配置项

class HeatMapItem(
    # 数据项名称。
    name: Optional[str] = None,

    # 数据项的值。
    value: Optional[Sequence] = None,

    # 图元样式配置项,参考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,

    # 提示框组件配置项,参考 `series_options.TooltipOpts`
    tooltip_opts: Union[TooltipOpts, dict, None] = None,
)

二. 例子

2.1 标签显示

import random

from pyecharts import options as opts
from pyecharts.charts import HeatMap
from pyecharts.faker import Faker

value = [[i, j, random.randint(0, 50)] for i in range(24) for j in range(7)]
c = (
    HeatMap()
    .add_xaxis(Faker.clock)
    .add_yaxis(
        "series0",  # 名称
        Faker.week,  # y轴数据
        value,  # 系列数据
        label_opts=opts.LabelOpts(is_show=True, position="inside"),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="HeatMap-Label 显示"),
        visualmap_opts=opts.VisualMapOpts(),  # 可视组件
    )
    .render("heatmap_with_label_show.html")
)

标签显示

2.2 笛卡尔系

这个建议生成 html 看会更有意思。

import pyecharts.options as opts
from pyecharts.charts import HeatMap

"""
Gallery 使用 pyecharts 1.1.0
参考地址: https://echarts.apache.org/examples/editor.html?c=heatmap-cartesian

目前无法实现的功能:

1、官方示例中的 label 暂时无法居中,待解决
2、暂时无法对块设置 itemStyle
"""

hours = [
    "12a",
    "1a",
    "2a",
    "3a",
    "4a",
    "5a",
    "6a",
    "7a",
    "8a",
    "9a",
    "10a",
    "11a",
    "12p",
    "1p",
    "2p",
    "3p",
    "4p",
    "5p",
    "6p",
    "7p",
    "8p",
    "9p",
    "10p",
    "11p",
]
days = ["Saturday", "Friday", "Thursday", "Wednesday", "Tuesday", "Monday", "Sunday"]

data = [
    [0, 0, 5],
    [0, 1, 1],
    [0, 2, 0],
    [0, 3, 0],
    [0, 4, 0],
    [0, 5, 0],
    [0, 6, 0],
    [0, 7, 0],
    [0, 8, 0],
    [0, 9, 0],
    [0, 10, 0],
    [0, 11, 2],
    [0, 12, 4],
    [0, 13, 1],
    [0, 14, 1],
    [0, 15, 3],
    [0, 16, 4],
    [0, 17, 6],
    [0, 18, 4],
    [0, 19, 4],
    [0, 20, 3],
    [0, 21, 3],
    [0, 22, 2],
    [0, 23, 5],
    [1, 0, 7],
    [1, 1, 0],
    [1, 2, 0],
    [1, 3, 0],
    [1, 4, 0],
    [1, 5, 0],
    [1, 6, 0],
    [1, 7, 0],
    [1, 8, 0],
    [1, 9, 0],
    [1, 10, 5],
    [1, 11, 2],
    [1, 12, 2],
    [1, 13, 6],
    [1, 14, 9],
    [1, 15, 11],
    [1, 16, 6],
    [1, 17, 7],
    [1, 18, 8],
    [1, 19, 12],
    [1, 20, 5],
    [1, 21, 5],
    [1, 22, 7],
    [1, 23, 2],
    [2, 0, 1],
    [2, 1, 1],
    [2, 2, 0],
    [2, 3, 0],
    [2, 4, 0],
    [2, 5, 0],
    [2, 6, 0],
    [2, 7, 0],
    [2, 8, 0],
    [2, 9, 0],
    [2, 10, 3],
    [2, 11, 2],
    [2, 12, 1],
    [2, 13, 9],
    [2, 14, 8],
    [2, 15, 10],
    [2, 16, 6],
    [2, 17, 5],
    [2, 18, 5],
    [2, 19, 5],
    [2, 20, 7],
    [2, 21, 4],
    [2, 22, 2],
    [2, 23, 4],
    [3, 0, 7],
    [3, 1, 3],
    [3, 2, 0],
    [3, 3, 0],
    [3, 4, 0],
    [3, 5, 0],
    [3, 6, 0],
    [3, 7, 0],
    [3, 8, 1],
    [3, 9, 0],
    [3, 10, 5],
    [3, 11, 4],
    [3, 12, 7],
    [3, 13, 14],
    [3, 14, 13],
    [3, 15, 12],
    [3, 16, 9],
    [3, 17, 5],
    [3, 18, 5],
    [3, 19, 10],
    [3, 20, 6],
    [3, 21, 4],
    [3, 22, 4],
    [3, 23, 1],
    [4, 0, 1],
    [4, 1, 3],
    [4, 2, 0],
    [4, 3, 0],
    [4, 4, 0],
    [4, 5, 1],
    [4, 6, 0],
    [4, 7, 0],
    [4, 8, 0],
    [4, 9, 2],
    [4, 10, 4],
    [4, 11, 4],
    [4, 12, 2],
    [4, 13, 4],
    [4, 14, 4],
    [4, 15, 14],
    [4, 16, 12],
    [4, 17, 1],
    [4, 18, 8],
    [4, 19, 5],
    [4, 20, 3],
    [4, 21, 7],
    [4, 22, 3],
    [4, 23, 0],
    [5, 0, 2],
    [5, 1, 1],
    [5, 2, 0],
    [5, 3, 3],
    [5, 4, 0],
    [5, 5, 0],
    [5, 6, 0],
    [5, 7, 0],
    [5, 8, 2],
    [5, 9, 0],
    [5, 10, 4],
    [5, 11, 1],
    [5, 12, 5],
    [5, 13, 10],
    [5, 14, 5],
    [5, 15, 7],
    [5, 16, 11],
    [5, 17, 6],
    [5, 18, 0],
    [5, 19, 5],
    [5, 20, 3],
    [5, 21, 4],
    [5, 22, 2],
    [5, 23, 0],
    [6, 0, 1],
    [6, 1, 0],
    [6, 2, 0],
    [6, 3, 0],
    [6, 4, 0],
    [6, 5, 0],
    [6, 6, 0],
    [6, 7, 0],
    [6, 8, 0],
    [6, 9, 0],
    [6, 10, 1],
    [6, 11, 0],
    [6, 12, 2],
    [6, 13, 1],
    [6, 14, 3],
    [6, 15, 4],
    [6, 16, 0],
    [6, 17, 0],
    [6, 18, 0],
    [6, 19, 0],
    [6, 20, 1],
    [6, 21, 2],
    [6, 22, 2],
    [6, 23, 6],
]
data = [[d[1], d[0], d[2] or "-"] for d in data]


(
    HeatMap(init_opts=opts.InitOpts(width="1440px", height="720px"))
    .add_xaxis(xaxis_data=hours)
    .add_yaxis(
        series_name="Punch Card",
        yaxis_data=days,
        value=data,
        label_opts=opts.LabelOpts(
            is_show=True, color="#fff", position="bottom", horizontal_align="50%"
        ),
    )
    .set_series_opts()
    .set_global_opts(
        legend_opts=opts.LegendOpts(is_show=False),
        xaxis_opts=opts.AxisOpts(
            type_="category",
            splitarea_opts=opts.SplitAreaOpts(
                is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)
            ),
        ),
        yaxis_opts=opts.AxisOpts(
            type_="category",
            splitarea_opts=opts.SplitAreaOpts(
                is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)
            ),
        ),
        visualmap_opts=opts.VisualMapOpts(
            min_=0, max_=10, is_calculable=True, orient="horizontal", pos_left="center"
        ),
    )
    .render("heatmap_on_cartesian.html")
)


总结

本文主要展示了Pyecharts热力图的简单应用和有趣的案例。

不到10分钟:使用pyecharts制作,制作热力图和地图 对于制作地图这一类的工具,其实有好多,比如tableau、PowerBI等等,但是它们都或多或少的有些弱点。 故我们这次使用pyecharts制作图形,pyecharts官网链接,官网写的比较详细,并且有图形预览(点击gallery就可以跳转到预览界面),非常的nice。 前期准备:需要安装好pyecharts库,python编译环境推荐使用jupyter notebook ,因为它可以在底部实时的观察生成的图形,当然使用别的pycharm、vscode编译器也可以。 1、根据自己的ex.. 阅读详情

相关推荐

python可视化:pyecharts是个神奇的工具(一)

pyecharts不仅可以生成传统的柱形图,折线图,散点图等,还可以方便快捷地实现地图热力图、词云图等等。美观,便捷,十分靠谱,如何快速上手,将手中的数据可视化,本篇做一下记录——

Lexi0305的博客 1069

PyEcharts 直角坐标系图表之热力图

第1关:HeatMap:热力图(一) 任务描述 本关任务:利用 PyEcharts 绘制一个基本的热力图。 相关知识 为了完成本关任务,你需要掌握:1. Python 的基本语法,2. PyEcharts 热力图的相关内容。 导入所需包 导入语句如下: from pyecharts.charts import HeatMap 我们用 Faker 生成了虚拟的绘图数据: value = [[i, j, random.randint(0, 50)] for i in range(

w w w的博客 3197

Python数据可视化 Pyecharts 制作 Heatmap 热力图

大家好,我是Mr数据杨。让我们在Python的世界里,以三国演义为背景,探索热力图的魅力。首先基本设置就像是军师们的智谋布局,例如诸葛亮运筹帷幄,轻松掌控局面。那么,此处的基本设置就像是为我们的Python战局进行基础布置,定义整个热力图的基调。就是坐标轴设置。这就像是三国时期的地图,指导武将们在战争中行军布阵。有了清晰的坐标轴,数据之间的关系就像是兵力的分布一样,一目了然。热力图数据项又代表着什么呢?想想看周瑜火烧赤壁,将兵力、风向等数据考虑进去,就能烧出一场震撼的胜利。

Mr数据杨 4万+

pyecharts绘制天气热力图

pyecharts绘制天气热力图

qq_45720608的博客 6409

Pyecharts系列课程06——热力图(Heatmap)

上一节在散点图我们使用到了视觉组件,在热力图中视觉组件也是非常重要的配置部分,这次我们学习设置数据值分段映射。# 新建图表# 添加数据chart.add_yaxis(series_name="访问用户数", yaxis_data=hours, value=viewers)# is_piecewise需设置为Truepieces=["max": 20},"min": 20,"max": 50},# 当数值介于50到99之间时设置为金色"min": 50,"max": 99,},

AwesomeTang 657

MCP协议桥接AdsPower:AI原生时代的浏览器自动化新范式

浏览器自动化是Web开发和数据采集领域的核心技术,其核心原理是通过程序控制浏览器内核执行页面导航、元素交互和数据提取等操作。传统方案如Selenium和Playwright虽功能强大,但在管理多实例、指纹隔离等复杂场景下,配置和维护成本较高。随着AI原生应用的发展,Model Context Protocol(MCP)作为一种标准化协议,为AI助手与外部工具间的通信提供了统一接口,显著提升了自动化流程的构建效率和自然语言交互能力。通过MCP Server桥接AdsPower指纹浏览器的本地API,开发者可将

weixin_30552811的博客 296

Pyecharts的主要图表

今天有好多疑问,没有办法跟课,于是先解决自己的第一个疑问吧——pyecharts有多少种图表?整理一下,否则跟课也有点“云深不知处”的感觉。下面整理pyecharts图(38种)的函数名及图样: 一、基本图表 1、日历图Calendar() 2、漏斗图Funnel() 3、仪表盘图Gauge() 4、关系图Graph() 5、水球图Liquid() 6、平行坐标系Parallel() 7、饼图Pie() 8、极坐标图Polar() 9、雷达图Radar() 10、桑基图Sankey()

zwy_0309的博客 3345

NBU计算机大二下期末

计算机网络 任课老师:JG (放了一学期的他自己的视频和上了一学期网课没什么区别,甚至不如上网课。。。) 考试题型 填空题10*1 判断题10*1 选择题30*1 简答和计算题30(4题) 讨论题20 强烈建议不要再这门课上花太多时间复习,不然有复习了个寂寞的感觉。。。计网是一页开卷的,一页开卷纸不用写太多,第一他不会考太详细;第二反正最后都要被收走。 填空题、判断题基本看懂了英文就能做的差不多;选择题去网上找点英文题多刷一下问题不大;简答题把书上每章根据他上课的内容在开卷纸上抄下就好,今年是解释check

weixin_45816954的博客 710

【Python可视化图表开发pyecharts】第7课时-pyecharts直角坐标系图表

添加 dataset 组件。直角坐标系图表继承自。

xzs51job的专栏 891

NC65增加自定义参照并且参照数据要根据选择的财务组织过滤

1、首先定义一个参照类 package nc.pub.jzcm.ref; import nc.ui.bd.ref.AbstractRefModel; import nc.ui.bd.ref.IRefDocEdit; import nc.ui.bd.ref.IRefMaintenanceHandler; public class PMPrPayDefaultRefModel extends AbstractRefModel { public PMPrPayDefaultRefModel(){ ...

xyl的博客 3494

手把手教你用Proteus仿真51单片机抢答器:倒计时+蜂鸣器报警完整项目

本文详细介绍了使用Proteus软件仿真51单片机智能抢答器的完整项目流程。通过系统架构设计、核心元件选型(如74LS30用于按键中断编码),结合状态机编程,实现了带可调倒计时、数码管显示和蜂鸣器报警的八路抢答器功能。项目涵盖了从原理图绘制到代码调试的全过程,是学习嵌入式系统开发的绝佳实践。

tcp8optimizer的博客 262

Python可视化:Pyecharts成长之路

可以交互的可视化大屏;高逼格的视觉体验;超简单的作图代码。本文收录了近9成的作图方法,手把手教你如何做一张好看的可视化大图

qq_46849625的博客 3540

YOLOv8/v9轻量化优化:剪枝30%+蒸馏提精,模型体积缩至4MB还能跑Jetson

剪枝:用敏感度分析找到“可牺牲的30%”,不碰核心特征;蒸馏:借大模型的“经验”补回精度,甚至反超原始小模型;量化:针对边缘设备特性优化量化策略,把体积和延迟压到最低。如果你的项目卡在边缘部署(速度慢/体积大),按“剪枝→蒸馏→量化”三步走,90%能在Jetson上跑通30FPS+的实时检测。需要轻量化模型文件(v8s/v9s剪枝蒸馏后权重)、剪枝工具和Jetson部署脚本的,评论区扣“轻量化”,直接发你可运行版本~

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 669

[pyecharts学习笔记]——Grid并行多图、组合图、多 X/Y 轴、

from pyecharts import options as opts from pyecharts.charts import Bar, Line from pyecharts.faker import Faker # 数据 v1 = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3] v2 = [2...

积一时之步,臻千里之遥程 2万+

Word2vec核心模型精讲:CBOW与Skip-gram

Word2vec是Google提出的词向量模型,通过CBOW和Skip-gram两种神经网络架构将词汇映射到低维向量空间。CBOW通过上下文预测中心词,训练速度快但高频词表现更好;Skip-gram则相反,通过中心词预测上下文,适合处理生僻词。为解决softmax计算效率问题,Word2vec引入基于哈夫曼树的Hierarchical Softmax优化技术,将复杂度从O(V)降至O(logV)。文章详细解析了两种模型的原理差异,并演示了哈夫曼树的构造过程及其在词向量训练中的关键作用,这种结合词频的优

Trisyp的博客 530

华为HCIE之TS部分整理

TroubleShooting 整体拓扑 1. MSTP 题目需求:site1 中,CLIENT1 属于 VLAN12,CLIENT3 属于 VLAN34;MSTP 中的 VLAN12 属于 instance1,vlan34 属于 instance2;两个 instance 的主备根桥分别在 SW1 和 SW2 上,并且要求 CLIENT1访问 R1 时经过的路径是 SW3-SW1-R1;同时要求 CLIENT3 访问 R1 时经过的路径是SW3-SW2-R1; 排错思路: ①查看SW3 SW1 SW

ledrsnet的博客 5756

pyecharts各种图表实现(超级全)

目录平面直角坐标系直方图折线图箱形图散点图带涟漪效果散点图k线图热力图象型图层叠图地理图表GEO-地理坐标系MAP-地图BMAP-百度地图基本图表饼图漏斗图仪表盘水球图日历图关系图平行坐标系极坐标系雷达图旭日图桑基图河流图词云图表格3D图表3D散点图3D折线图3D直方图3D地图树型图表树图矩形树图 以下默认都是在Jupyter Notebook展示 也可以将每个图代码的最后一行换为 所创建的对象.render('名字.html')转换为html文件就可以查看啦 平面直角坐标系 直方图 x_data = ['

hyk的博客 5378

vue2/3 - [超详细] 实现企业微信扫码登录完整流程及代码,vue项目接入企业微信扫码登录功能教程,支持新跳页显示二维码或div容器里内嵌登录二维码(详细代码注释,一键复制开箱即用)

vue企业微信扫码登录,vue网页网站企业微信扫码登录教程,vue如何实现企业微信扫码登录功能,vue详细企业微信扫码登录功能实现,vue2实现企业微信扫码登录,前端vue企业微信扫码登录教程,vue pc电脑端企业微信扫码登录详细教程,vue项目中怎么做企业微信扫码注册登录,vue实现网站接入企业微信扫码登录,vue2做企业微信扫码登录的优质文章教程,vue网站对接企业微信扫码登录,vue企业微信扫码登录如何新开一页全屏显示登录二维码,vue企业微信登录二维码 内嵌在div容器里/跳页显示登录二维码,vu

✅ 精选推荐文章 5702

03 pyecharts 直角坐标系图表(示例代码+效果图)

1.Bar柱状图/条形图 2 Line折线图 3 Scatter散点图 4 EffectScatter涟漪特效散点图 5 Boxplot箱型图 6 Kline k线图 7 HeatMap热力图 8 PictorialBar象型柱状图 9 overlap层叠图 9.1 Overlap_bar_line 9.2 Overlap_line_scatter Faker中函数的介绍:......

c_lanxiaofang的博客 1341

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

基于Pyecharts绘制常见的直角坐标系图表

基于Pyecharts绘制常见的直角坐标系图表,简洁的代码,好看的照片,创作不易,大家的关注和点赞也是一种动力,希望对大家有帮助

weixin_52419462的博客 2563

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

pyecharts-python的交互可视化库

pyecharts库的安装以及使用笔记,常见的bug解决

門門的博客 4858

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

pyecharts图表类型分类和配置项

基本图表 Pie:饼图 WordCloud:词云图 Radar:雷达图 Graph:关系图 Gauge:仪表盘 Funnel:漏斗图 Parallel:平行坐标系 Liquid:水球图 Calendar:日历图 Polar:极坐标系 Sankey:桑基图 Sunburst:旭日图 ThemeRiver:主题河流图 直角坐标系图表 Bar:柱状图/条形图 Line:折线/面积图 S...

愿与你一起深度技术交流 3739

数据可视化pyecharts学习笔记---热力图、日历图

直角坐标系图表–热力图 from pyecharts.charts import HeatMap 1、基本示例 from pyecharts import options as opts from pyecharts.charts import HeatMap from pyecharts.faker import Faker import random hm = HeatMap() # 使用列表表达式创建7*24的二维列表 data = [[i,j,random.randint(10,200)] for

tzkj_wdz 4557

python数据可视化--pyecharts生成图表

【python可视化系列】python数据可视化利器--pyecharts echarts官网 一、前言 echarts是什么?下面是来自官方的介绍: ECharts,缩写来自Enterprise Charts,商业级数据图表,Echarts 是百度开源的一个数据可视化纯Javascript(JS) 库。主要用于数据可视化,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6...

ezreal_tao的博客 1万+
上一篇: Pyecharts直角坐标系图:箱形图
下一篇: Pyecharts直角坐标系图:象形柱状图
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值