Python绘制仪表图(附带实例)
仪表图(Gauge chart)是一种用于展示单一指标或数值的图表类型,通常用于显示目标值与实际值之间的差异。
仪表图类似于汽车仪表板上的速度计或油量计,因此也常被称为仪表板图。仪表图通常由一个圆形或半圆形的指示器和刻度盘组成,指示器的位置代表指标的值,而刻度盘上的刻度则表示该指标的范围。
在数据可视化中,仪表图通常用来展示某个指标的当前值,以及该值与理想目标值或预期范围之间的关系。它们在监控关键性能指标、比较实际和目标数值、评估进度等方面非常有用。
仪表图的设计旨在引人注目并直观地传达信息,因此在创建时需要考虑美学和易读性。虽然仪表图在一些情况下可能会过于炫目或不够准确,但在适当的情况下,它是非常有用的工具,可以帮助人们迅速了解关键指标的状态和趋势。
【实例】使用 Plotly 库创建仪表图。输入如下代码:
输出的结果如下图所示:
仪表图类似于汽车仪表板上的速度计或油量计,因此也常被称为仪表板图。仪表图通常由一个圆形或半圆形的指示器和刻度盘组成,指示器的位置代表指标的值,而刻度盘上的刻度则表示该指标的范围。
在数据可视化中,仪表图通常用来展示某个指标的当前值,以及该值与理想目标值或预期范围之间的关系。它们在监控关键性能指标、比较实际和目标数值、评估进度等方面非常有用。
仪表图的设计旨在引人注目并直观地传达信息,因此在创建时需要考虑美学和易读性。虽然仪表图在一些情况下可能会过于炫目或不够准确,但在适当的情况下,它是非常有用的工具,可以帮助人们迅速了解关键指标的状态和趋势。
【实例】使用 Plotly 库创建仪表图。输入如下代码:
import plotly.graph_objects as go # 示例 1: 创建一个简单的仪表图 fig = go.Figure(go.Indicator( mode = "gauge+number", # 设置为仪表盘模式并显示数值 value = 270, # 设置指示器的数值为 270 domain = {'x': [0, 1], 'y': [0, 1]}, # 指示器的位置占据整个图表空间 title = {'text': "Speed"}) # 指示器的标题为 "Speed" fig.show() # 示例 2: 创建一个带有增量和阈值的仪表图 fig = go.Figure(go.Indicator( domain = {'x': [0, 1], 'y': [0, 1]}, # 指示器的位置占据整个图表空间 value = 450, # 设置指示器的数值为 450 mode = "gauge+number+delta", # 设置为仪表盘模式,显示数值和增量 title = {'text': "Speed"}, # 指示器的标题为 "Speed" delta = {'reference': 380}, # 增量设置为 380 gauge = { 'axis': {'range': [None, 500]}, # 指示器轴范围设定为 0 ~ 500 'steps': [ # 阶梯设置,将范围划分为两段,分别设定为灰色和深灰色 {'range': [0, 250], 'color': "lightgray"}, {'range': [250, 400], 'color': "gray"}], 'threshold': {'line': {'color': "red", 'width': 4}, 'thickness': 0.75, 'value': 490} # 设定阈值,超过阈值时显示红色 })) fig.show() # 示例 3: 创建一个带有增量和阈值的仪表图,样式定制更多 fig = go.Figure(go.Indicator( mode = "gauge+number+delta", # 设置为仪表盘模式、显示数值和增量 value = 420, # 设置指示器的数值为 420 domain = {'x': [0, 1], 'y': [0, 1]}, # 指示器的位置占据整个图表空间 title = {'text': "Speed", 'font': {'size': 24}}, # 指示器标题,字体大小 delta = {'reference': 400, 'increasing': {'color': "RebeccaPurple"}}, # 增量设置为 400,且增大时显示紫色 gauge = { 'axis': {'range': [None, 500], 'tickwidth': 1, # 指示器轴范围设定,设置刻度宽度和颜色 'tickcolor': "darkblue"}, 'bar': {'color': "darkblue"}, # 指示器条颜色设定为深蓝色 'bgcolor': "white", # 背景色设定为白色 'borderwidth': 2, # 边框宽度设定为 2 'bordercolor': "gray", # 边框颜色设定为灰色 'steps': [ # 阶梯设置,将范围划分为两段,分别设定为青色和皇家蓝 {'range': [0, 250], 'color': 'cyan'}, {'range': [250, 400], 'color': 'royalblue'}], 'threshold': { # 设定阈值为 490,超过阈值时指示器显示红色 'line': {'color': "red", 'width': 4}, 'thickness': 0.75, 'value': 490}}) # 更新图表布局,设置背景色和字体颜色 fig.update_layout(paper_bgcolor="lavender", font={'color': "darkblue", 'family': "Arial"}) fig.show()上述代码展示了如何使用 Plotly 创建仪表图,分别包括简单的仪表图显示数值、带有增量和阈值的仪表图以及样式定制更多的仪表图,通过设置不同的参数,如数值、增量、阈值以及自定义样式等,呈现出多样化的仪表图效果。
输出的结果如下图所示:
