网站首页 > 技术文章 正文
今天教大家用pyecharts画仪表盘
仪表盘 (Gauge) 是一种拟物化的图表,刻度表示度量,指针表示维度,指针角度表示数值。仪表盘图表就像汽车的速度表一样,有一个圆形的表盘及相应的刻度,有一个指针指向当前数值。目前很多的管理报表或报告上都是用这种图表,以直观的表现出某个指标的进度或实际情况。
仪表盘的好处在于它能跟人们的常识结合,使大家马上能理解看什么、怎么看。拟物化的方式使图标变得更友好更人性化,正确使用可以提升用户体验。
常用的仪表盘主要有以下4种类型
一、基本型仪表盘
from pyecharts import options as opts
from pyecharts.charts import Gauge
c = (
Gauge()
.add("", [("工作进展情况", 78)])
.set_global_opts(title_opts=opts.TitleOpts(title="基本型仪表盘"))
)
c.render_notebook()
二、给仪表盘设置颜色
from pyecharts import options as opts
from pyecharts.charts import Gauge
c = (
Gauge()
.add(
"业务指标",
[("完成率", 66)],
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="设置不同颜色"),
legend_opts=opts.LegendOpts(is_show=False),
)
)
c.render_notebook()
将仪表盘划分为0-0.3、0.3-0.7、0.7-1三个段,并设置不同的颜色
三、改变仪表盘刻度
from pyecharts import options as opts
from pyecharts.charts import Gauge
c = (
Gauge()
.add(
"业务指标",
[("完成率", 55.5)],
split_number=20,
axisline_opts=opts.AxisLineOpts(
linestyle_opts=opts.LineStyleOpts(
color=[(0.3, "#00CDCD"), (0.7, "#CDBE70"), (1, "#00EE00")], 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),
)
)
c.render_notebook()
如果想让仪表盘的刻度变成5,那么我们可以把它分成20份(split_number=20)
四、改变仪表盘的大小
from pyecharts import options as opts
from pyecharts.charts import Gauge
c = (
Gauge()
.add("", [("完成率", 66.6)], radius="60%")
.set_global_opts(title_opts=opts.TitleOpts(title="半径改为 60%"))
)
c.render_notebook()
radius="60%"可以把仪表盘半径改为默认半径的60%
五、改变仪表盘内文字字体
from pyecharts import options as opts
from pyecharts.charts import Gauge
c = (
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-改变轮盘内的字体"))
)
c.render_notebook()
可以分别设置大小(font_size)、颜色(color)和字体(font_family)
-完-
完整代码请关注公众号【python数据分析之禅】并回复仪表盘获取
猜你喜欢
- 2025-07-28 用python嗅探网络中所有HTTP数据包
- 2025-07-28 一起来用 Python 做个是男人就坚持100秒游戏
- 2025-07-28 编程之美:分享Python简单界面框架easygui使用方法
- 2025-07-28 想了解Python源代码加密吗?现总结如下5大加密混淆手段!
- 2025-07-28 不容易!找到一个python的超简易网站搭建神器
- 2025-07-28 多学习才能多赚钱之:python怎么制作游戏脚本
- 2025-07-28 由浅入深和由简单到复杂,带你学习wxpython的菜单
- 2025-07-28 零基础Python自学教程9:Python中运算符的优先级和条件表达式
- 2025-07-28 python 标志法-优化版(数值判断[正负])、非空判断、退出判断)
- 2025-07-28 [python]B站视频下载器优化:下载/合并分开,断点下载,图标问题
- 290℃Python短文,Python中的嵌套条件语句(六)
- 286℃PythonNet:实现Python与.Net代码相互调用!
- 283℃python笔记:for循环嵌套。end=""的作用,图形打印
- 282℃Python实现字符串小写转大写并写入文件
- 279℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 140℃原来2025是完美的平方年,一起探索六种平方的算吧
- 123℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 115℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)