pyecharts可视化图表仪表盘_Gauge:从入门到精通
前言
Gauge图表(仪表盘)是一种特殊类型的图表,通常用于显示单个数据点相对于设定范围的比例关系。它的形状类似于汽车的速度表或压力表,非常适合展示完成率、进度、绩效等指标。
仪表盘图表的优势在于:
- 直观易懂:能够快速传达关键指标的状态
- 视觉吸引力:圆形设计和动态指针能够吸引用户注意
- 空间效率:在有限空间内展示重要信息
- 灵活性:支持多种自定义选项,适应不同场景
目录
- 前言
- 图表一:Gauge - 基本示例
- 代码说明:
- 效果展示:
- 图表二:Gauge - 不同颜色示例
- 代码说明:
- 效果展示:
- 图表三:Gauge - 改变轮盘内的字体
- 代码说明:
- 效果展示:
- 图表四:Gauge - 分割段数-Label
- 代码说明:
- 效果展示:
- 图表五:Gauge - 修改 Radius 为 50%
- 代码说明:
- 效果展示:
- 总结
- 注意事项
- 常见问题
图表一:Gauge - 基本示例
下面是创建基本仪表盘图表的代码:
from pyecharts import options as opts
from pyecharts.charts import Gauge# 创建Gauge实例
c = (Gauge()# 添加数据,格式为列表中的元组(名称, 值).add("", ["完成率", 66.6])# 设置全局配置,添加标题.set_global_opts(title_opts=opts.TitleOpts(title="Gauge-基本示例"))# 可选:直接在notebook中渲染
)
c.render_notebook()
代码说明:
- 首先导入必要的模块:
options
用于配置图表,Gauge
用于创建仪表盘图表。 - 创建
Gauge
实例。 - 使用
.add()
方法添加数据,这里我们添加了一个名为"完成率"的数据,值为66.6。 - 使用
.set_global_opts()
设置全局配置,这里我们添加了一个标题。 - 最后使用
.render_notebook()
在Jupyter Notebook中渲染图表。如果需要保存为HTML文件,可以使用.render("gauge_base.html")
。
效果展示:
执行上述代码后,你将看到一个基本的仪表盘图表,指针指向66.6的位置,表示完成率为66.6%。
图表二:Gauge - 不同颜色示例
下面是创建带有不同颜色区域的仪表盘图表代码:
from pyecharts import options as opts
from pyecharts.charts import Gaugec = (Gauge().add("业务指标",["完成率", 55.5],axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color=[(0.3, "#67e0e3"), (0.7, "#37a2da"), (1, "#fd666d")], width=30)),).set_global_opts(title_opts=opts.TitleOpts(title="Gauge-不同颜色"),legend_opts=opts.LegendOpts(is_show=False),)#.render("gauge_color.html")
)
c.render_notebook()
代码说明:
- 与基本示例类似,我们首先导入必要的模块并创建
Gauge
实例。 - 在
.add()
方法中,我们添加了一个名为"业务指标"的系列,并设置了数据点"完成率"为55.5。 - 关键区别在于我们使用
axisline_opts
参数自定义了轴线的样式:color
参数接受一个列表,其中每个元素是一个元组(比例, 颜色),用于定义不同区间的颜色- 这里我们定义了三个区间:0-30%为青色(#67e0e3),30-70%为蓝色(#37a2da),70-100%为红色(#fd666d)
width
参数设置了轴线的宽度为30
- 在全局配置中,我们设置了标题,并隐藏了图例(
is_show=False
)
效果展示:
执行上述代码后,你将看到一个带有颜色渐变效果的仪表盘图表,指针指向55.5的位置,处于蓝色区间内,表示完成率为55.5%。
图表三:Gauge - 改变轮盘内的字体
下面是修改仪表盘轮盘内字体样式的代码示例:
from pyecharts import options as opts
from pyecharts.charts import Gaugec = (Gauge().add("",["完成率", 66.6],title_label_opts=opts.LabelOpts(font_size=40, color="blue", font_family="Microsoft YaHei"),).set_global_opts(title_opts=opts.TitleOpts(title="Gauge-改变轮盘内的字体"))#.render("gauge_label_title_setting.html")
)
c.render_notebook()
代码说明:
- 导入必要的模块并创建
Gauge
实例。 - 在
.add()
方法中,我们添加了数据点"完成率"为66.6。 - 关键配置是
title_label_opts
参数,用于自定义轮盘内显示的标题标签样式:font_size
设置字体大小为40color
设置字体颜色为蓝色font_family
设置字体为"Microsoft YaHei"(微软雅黑)
- 在全局配置中,我们设置了图表标题为"Gauge-改变轮盘内的字体"
效果展示:
执行上述代码后,你将看到一个仪表盘图表,轮盘内的"完成率"文本将以蓝色、40号大小的微软雅黑字体显示,指针指向66.6的位置。
图表四:Gauge - 分割段数-Label
下面是设置仪表盘分割段数和自定义标签格式的代码示例:
from pyecharts import options as opts
from pyecharts.charts import Gaugec = (Gauge().add("业务指标",["完成率", 55.5],split_number=5,axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(color=[(0.3, "#67e0e3"), (0.7, "#37a2da"), (1, "#fd666d")], width=30)),detail_label_opts=opts.LabelOpts(formatter="{value}"),).set_global_opts(title_opts=opts.TitleOpts(title="Gauge-分割段数-Label"),legend_opts=opts.LegendOpts(is_show=False),)#.render("gauge_splitnum_label.html")
)
c.render_notebook()
代码说明:
- 导入必要的模块并创建
Gauge
实例。 - 在
.add()
方法中,我们添加了名为"业务指标"的系列和数据点"完成率"为55.5。 - 关键配置参数:
split_number=5
:将仪表盘圆周分为5个等分的段axisline_opts
:与图表二类似,设置了不同区间的颜色detail_label_opts=opts.LabelOpts(formatter="{value}")
:自定义详情标签的格式,这里设置为只显示数值
- 在全局配置中,我们设置了图表标题并隐藏了图例
效果展示:
执行上述代码后,你将看到一个被分为5段的仪表盘图表,指针指向55.5的位置,处于蓝色区间内。图表将只显示数值,而不显示默认的百分比符号。
图表五:Gauge - 修改 Radius 为 50%
以下代码展示了如何修改仪表盘的半径(radius)为50%:
from pyecharts import options as opts
from pyecharts.charts import Gauge c = (Gauge() .add("", ["完成率", 66.6], radius="50%") .set_global_opts(title_opts=opts.TitleOpts(title="Gauge-修改 Radius 为 50%")) #.render("gauge_change_radius.html")
)
c.render_notebook()
代码说明:
- 导入必要的模块并创建
Gauge
实例。 - 在
.add()
方法中,我们添加了数据点"完成率"为66.6,并通过radius="50%"
参数将仪表盘的半径设置为容器宽度的50%。 - 在全局配置中,我们设置了图表标题"Gauge-修改 Radius 为 50%"。
效果展示:
执行上述代码后,你将看到一个半径较小的仪表盘图表,指针指向66.6%的位置。与之前的示例相比,这个仪表盘的尺寸明显减小,这对于需要在同一页面上展示多个仪表盘图表的场景非常有用。
总结
通过本文的学习,我们掌握了pyecharts中Gauge仪表盘图表的多种用法:
- 创建基本的仪表盘图表
- 自定义仪表盘的颜色区域
- 修改轮盘内的字体样式
- 设置仪表盘的分割段数和标签格式
- 调整仪表盘的大小(radius参数)
这些技巧能够帮助我们创建出更加直观、美观且信息丰富的仪表盘,有效传达关键业务指标。
敬请期待后续内容!
注意事项
- 确保已安装pyecharts库:
pip install pyecharts
- 代码中的
.render_notebook()
适用于Jupyter Notebook环境,如果需要保存为HTML文件,可以使用.render("filename.html")
- 颜色值可以使用RGB、RGBA、十六进制等多种格式
- 字体设置可能需要根据操作系统进行调整,以确保显示效果
常见问题
Q: 为什么我的仪表盘没有显示?
A: 请检查是否正确调用了.render_notebook()
或.render()
方法,并确保pyecharts库版本正确。
Q: 如何调整仪表盘的位置和大小?
A: 可以通过radius
参数调整大小,通过center
参数调整位置(默认居中)。