使用Plotly创建和自定义指标图表,本文中将介绍如何使用Plotly库创建指标图表的具体操作步骤。
如果你不熟悉Plotly或数据可视化概念,不要担心!我们将把它分解成易于理解的小块内容,使其适合任何人。
【资料图】
Plotly是一个强大的数据可视化工具,允许我们使用Python创建各种交互式绘图和图表。在Plotly提供的无数类型的图表中,有一种特别简单明了的类型是“指标图表”。这些图表非常适合仪表盘,你可以在其中强调关键指标或追踪一段时间内的变化。
在深入研究细节之前,需要导入Plotly库。这是任何涉及外部库的Python程序中典型的第一步:
import plotly.graph_objects as go
让我们考虑一个场景,我们有两个值-120和150。我们要使用参考值100创建这些值的指标。参考值是我们将实际值与之进行比较的基准或标准。
我们的目标是生成下图:
图形输出
以下是创建指标的步骤:
# 创建绘图的布局layout = go.Layout( grid = {"rows": 1, "columns": 2, "pattern": "independent"}, width = 600, # 宽度像素 height = 300 # 高度像素)
fig = go.Figure(layout=layout)# 第一个值fig.add_trace(go.Indicator( mode = "number+delta+gauge", value = 120, delta = {"reference": 100}, gauge = { "axis": {"visible": True, "range": [None, 150]}, "steps": [ {"range": [0, 100], "color": "lightgray"} ], "threshold": { "line": {"color": "red", "width": 4}, "thickness": 0.75, "value": 100 } }, title = {"text": "Value 1"}, domain = {"x": [0, 0.5], "y": [0, 1]}))# 第二个值fig.add_trace(go.Indicator( mode = "number+delta+gauge", value = 150, delta = {"reference": 100}, gauge = { "axis": {"visible": True, "range": [None, 200]}, "steps": [ {"range": [0, 100], "color": "lightgray"} ], "threshold": { "line": {"color": "red", "width": 4}, "thickness": 0.75, "value": 100 } }, title = {"text": "Value 2"}, domain = {"x": [0.5, 1], "y": [0, 1]}))fig.show()
在我们讨论的代码中,我们正在使用go.Indicator函数来创建指标。一开始可能看起来会感觉有点复杂,但一旦我们了解它使用的参数,一切就都水到渠成了。以下是我们所使用参数的概要介绍:
mode:此参数设置指标的模式。通过将其设置为“number+delta+gauge”,我们告诉Plotly显示实际值(number)、与参考值的差异(delta)以及在其范围内可视化数值的仪表(gauge)。value:这是该指标将显示的实际值。delta:此参数用于展示实际值和参考值之间的差异。当你想要突出变化或增长时,这特别有用。gauge:这是为我们的值提供背景的一个视觉表示。它类似于一个速度表,显示了我们的值在特定范围内所处的位置。在gauge参数中,我们可以进一步自定义axis(仪表的范围)、steps(仪表的分段)和threshold(仪表上标记的值)。title:这只是指标的标题。domain:此参数确定每个指标所占据的绘图区域,这有助于我们将指标并排定位放置。通过理解和调整这些参数,你可以自定义指标图表以适应你的数据和受众需求。你可以尝试不同颜色、调整范围、重新定位指标等等。
然而,虽然美学定制是数据可视化的一个很好的方面,但重要的是要记住,任何数据可视化的主要目标都是清晰准确地表示数据。因此,总是优先考虑清晰性而不是华丽性。
我们使用Plotly创建了一个简单而强大的数据可视化。这只是冰山一角,Plotly提供了许多更多功能和类型的图表供你探索。
图形输出
标签: