日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 編程語言 正文

Python數(shù)據(jù)可視化Pyecharts制作Heatmap熱力圖_python

作者:Mr數(shù)據(jù)楊 ? 更新時間: 2022-06-06 編程語言

本文介紹基于?Python3?的?Pyecharts?制作?Heatmap(熱力圖?時需要使用的設(shè)置參數(shù)和常用模板案例,可根據(jù)實際情況對案例中的內(nèi)容進行調(diào)整即可。

使用?Pyecharts?進行數(shù)據(jù)可視化時可提供直觀、交互豐富、可高度個性化定制的數(shù)據(jù)可視化圖表。案例中的代碼內(nèi)容基于?Pyecharts 1.x 版本?。

HeatMap:熱力圖

1.基本設(shè)置

class HeatMap(
    # 初始化配置項,參考 `global_options.InitOpts`
    init_opts: opts.InitOpts = opts.InitOpts()
)
def add_yaxis(
    # 系列名稱,用于 tooltip 的顯示,legend 的圖例篩選。
    series_name: str,
    # Y 坐標軸數(shù)據(jù)
    yaxis_data: types.Sequence[types.Union[opts.HeatMapItem, dict]],
    # 系列數(shù)據(jù)項
    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,
)

2.熱力圖數(shù)據(jù)項

class HeatMapItem(
    # 數(shù)據(jù)項名稱。
    name: Optional[str] = None,
    # 數(shù)據(jù)項的值。
    value: Optional[Sequence] = None,
    # 圖元樣式配置項,參考 `series_options.ItemStyleOpts`
    itemstyle_opts: Union[ItemStyleOpts, dict, None] = None,
    # 提示框組件配置項,參考 `series_options.TooltipOpts`
    tooltip_opts: Union[TooltipOpts, dict, None] = None,
)

Demo 舉例

1.基礎(chǔ)熱力圖

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(
        "",
        Faker.week,
        value,
        label_opts=opts.LabelOpts(is_show=True, position="inside"),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(title="基礎(chǔ)熱力圖"),
        visualmap_opts=opts.VisualMapOpts(),
    )
#     .render("基礎(chǔ)熱力圖.html")
)
c.render_notebook()

原文鏈接:https://zhuanlan.zhihu.com/p/380741543

欄目分類
最近更新