使用 Pyecharts 绘制仪表图 —— 数据可视化的高级展示
仪表图介绍
仪表图是一种数据可视化图标,类似汽车仪表盘的仪表,于以图表、表格、指标等形式展示关键数据和指标,以便用户能够快速了解和分析数据的状态、趋势和关联关系,它通常以仪表盘的形式呈现。
仪表盘图提供直观、简洁和易于理解的数据展示,帮助我们快速捕捉到关键信息和洞察。通过仪表盘图,可以实时监测业务指标、数据趋势和关键绩效指标,更便于我们做出快速的决策。
Pyecharts作为数据可视化的神器,当然也能绘制仪表图,本文就来介绍一下如何使用Pyecharts来绘制仪表图。
仪表图类基础配置
- 导包
在Pyecharts中,每一种图都有不同的类,仪表图也不例外,仪表图的类为Gauge,现在我们来进行导包,这是绘制仪表图的第一步:
from pyecharts import options as opts
from pyecharts.charts import Gauge
- add函数配置
我们在导入类之后,接下来就需要考虑对仪表图进行具体的配置,add函数是我们对仪表图进行配置的函数,我们可以使用不同的参数对仪表图进行设置,通过查看源码,我们可以发现参数说明如下:
def add(
self,
series_name: str, # 系列名称,字符串类型
data_pair: types.Sequence, # 数据对,序列类型
*,
min_: types.Numeric = 0, # 最小值,默认为0
max_: types.Numeric = 100, # 最大值,默认为100
split_number: types.Numeric = 10, # 分割段数,默认为10
center: types.Sequence = None, # 中心位置,默认为空
radius: types.Union[types.Numeric, str] = "75%", # 半径,默认为"75%"
start_angle: types.Numeric = 225, # 起始角度,默认为225
end_angle: types.Numeric = -45, # 结束角度,默认为-45
is_clock_wise: bool = True, # 是否顺时针,默认为True
title_label_opts: types.GaugeTitle = opts.GaugeTitleOpts( # 仪表盘标题配置,默认为指定的配置
offset_center=["0%", "20%"],
),
detail_label_opts: types.GaugeDetail = opts.GaugeDetailOpts( # 仪表盘详细标签配置,默认为指定的配置
formatter="{value}%",
offset_center=["0%", "40%"],
),
progress: types.GaugeProgress = opts.GaugeProgressOpts(), # 仪表盘进度配置,默认为指定的配置
pointer: types.GaugePointer = opts.GaugePointerOpts(), # 仪表盘指针配置,默认为指定的配置
anchor: types.GaugeAnchor = opts.GaugeAnchorOpts(), # 仪表盘锚点配置,默认为指定的配置
tooltip_opts: types.Tooltip = None, # 提示框配置,默认为空
axisline_opts: types.AxisLine = None, # 坐标轴线配置,默认为空
axistick_opts: types.AxisTick = None, # 坐标轴刻度配置,默认为空
axislabel_opts: types.AxisLabel = None, # 坐标轴标签配置,默认为空
itemstyle_opts: types.ItemStyle = None, # 数据项样式配置,默认为空
)
绘图实战
- 绘制基础仪表图
我们将演示如何创建一个简单的仪表图。假设我们要显示某个电池的电量百分比,代码如下:
from pyecharts import options as opts
from pyecharts.charts import Gauge
gauge = (
Gauge()
.add("", [("电量", 80)]) # 标题和数据
.set_global_opts(title_opts=opts.TitleOpts(title="电池电量仪表图"))
)
gauge.render("basic_gauge.html")
运行脚本,在浏览器中打开生成的html文件,如下:
- 仪表图的定制和美化