2025年可视化 - 教你用Python实现热力图(一)

可视化 - 教你用Python实现热力图(一)本文正在参与新星计划 Python 学习方向 详情请看 93 条消息 的博客 CSDN 博客 SQL SERVER 计算机三级 数据库领域博主 目录 一 导引 二 内容 一 地图热力图 动态地图 1

大家好,我是讯享网,很高兴认识大家。

本文正在参与新星计划Python学习方向,详情请看:(93条消息) lifein的博客_CSDN博客-SQL SERVER,计算机三级——数据库领域博主

目录

一、导引

二、内容

(一)地图热力图:(动态地图)

1、环境搭建:

2、地图代码:(原始)



讯享网

一、导引

        在可视化中,热力图可以使用颜色深浅或者指定颜色来直观的表示目前已有数据情况。热力图的表现形式不只有上面的地图热力图,在Pearson相关性系数的时候也同样会用到热力图。

        本文将会围绕地图热力图和Pearson相关性系数的可视化进行讲解(并附代码)。

二、内容

(一)地图热力图:(动态地图)

1、环境搭建:

如果没有下载相关绘图的包,需要先

pip install pyecharts

讯享网
讯享网#pip install pyecharts from pyecharts import options as opts from pyecharts.charts import Map import pandas as pd

2、地图代码:(原始)

        1)初始化配置

class Map( # 初始化配置项 init_opts: opts.InitOpts = opts.InitOpts() ) #Map(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))

        · theme: pyecharts内置提供了10+ 种不同的风格。

        2)添加数据:add() 

讯享网def add( series_name: str, data_pair: types.Sequence[types.Union[types.Sequence, opts.MapItem, dict]], maptype: str = "china", is_selected: bool = True, # 是否开启鼠标缩放和平移漫游。 is_roam: bool = True, # 当前视角的中心点,用经纬度表示 center: Optional[Sequence] = None, # 参数用于 scale 地图的长宽比。 aspect_scale: types.Numeric = 0.75, # 二维数组,定义定位的左上角以及右下角分别所对应的经纬度。 bounding_coords: types.Optional[types.Sequence[types.Numeric]] = None, # 最小的缩放值。 min_scale_limit: types.Optional[types.Numeric] = None, # 最大的缩放值。 max_scale_limit: types.Optional[types.Numeric] = None, # 默认是 'name',针对 GeoJSON 要素的自定义属性名称,作为主键用于关联数据点和 GeoJSON 地理要素。 name_property: str = "name", # 选中模式,表示是否支持多个选中,默认关闭,支持布尔值和字符串。 # 字符串取值可选'single'表示单选,或者'multiple'表示多选。 selected_mode: types.Union[bool, str] = False, # 当前视角的缩放比例。 zoom: Optional[Numeric] = 1, # 自定义地区的名称映射 name_map: Optional[dict] = None, # 标记图形形状 symbol: Optional[str] = None, # 多个拥有相同地图类型的系列会使用同一个地图展现。 # 如果多个系列都在同一个区域有值,ECharts 会对这些值统计得到一个数据。 # 这个配置项就是用于配置统计的方式,目前有: # 'sum' 取和。 # 'average' 取平均值。 # 'max' 取最大值。 # 'min' 取最小值。 map_value_calculation: str = "sum", # 是否显示标记图形 is_map_symbol_show: bool = True, # pyecharts 暂时没有提供 left/top/right/bottom 的配置 # layoutCenter 和 layoutSize 提供了除了 left/right/top/bottom/width/height 之外的布局手段。 # 在使用 left/right/top/bottom/width/height 的时候 # 可能很难在保持地图高宽比的情况下把地图放在某个盒形区域的正中间,并且保证不超出盒形的范围。 # 此时可以通过 layoutCenter 属性定义地图中心在屏幕中的位置,layoutSize 定义地图的大小。 # 如下示例 # layoutCenter: ['30%', '30%'], # // 如果宽高比大于 1 则宽度为 100,如果小于 1 则高度为 100,保证了不超过 100x100 的区域 # layoutSize: 100 layout_center: types.Optional[types.Sequence[str]] = None, # 地图的大小,见 layoutCenter。支持相对于屏幕宽高的百分比或者绝对的像素大小。 layout_size: types.Union[str, types.Numeric] = None, # 标签配置项,参考 `series_options.LabelOpts` label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(), # 提示框组件配置项,参考 `series_options.TooltipOpts` tooltip_opts: Union[opts.TooltipOpts, dict, None] = None, # 图元样式配置项,参考 `series_options.ItemStyleOpts` itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None, # 高亮标签配置项,参考 `series_options.LabelOpts` emphasis_label_opts: Union[opts.LabelOpts, dict, None] = None, # 高亮图元样式配置项,参考 `series_options.ItemStyleOpts` emphasis_itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None, )

        主要参数解释:

        · series_name:系列名称,用于 tooltip 的显示,legend 的图例筛选。

        · data_pair:数据项 (坐标点名称,坐标点值)

        · maptype:地图类型

        · is_selected:是否选中图例

        · aspect_scale:参数用于 scale 地图的长宽比

        · min_scale_limit:最小的缩放值

        · max_scale_limit:最大的缩放值

        · layout_size:地图的大小,支持相对于屏幕宽高的百分比或者绝对的像素大小。

        · label_opts:标签配置项

        3)MapItem:地图数据项

class MapItem( # 数据所对应的地图区域的名称,例如 '广东','浙江'。 name: Optional[str] = None, # 该区域的数据值。 value: Optional[Numeric] = None, # 该区域是否选中。 is_selected: bool = False, # 标签配置项,参考 `series_options.LabelOpts` label_opts: Union[LabelOpts, dict, None] = None, # 图元样式配置项,参考 `series_options.ItemStyleOpts` itemstyle_opts: Union[ItemStyleOpts, dict, None] = None, # 提示框组件配置项,参考 `series_options.TooltipOpts` tooltip_opts: Union[TooltipOpts, dict, None] = None, )
小讯
上一篇 2025-02-17 11:43
下一篇 2025-03-04 16:03

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/33906.html