如何在绘图表中指定数据类型?

问题描述 投票:0回答:1

我使用plotly 创建了一个表格,其中包含混合类型的值,例如文本、数字和百分比。我创建的表格如下所示:

正如您所看到的,某些数字具有非常大的小数位,或者某些数字(如 PLF 列)不是百分比形式。如何在绘图中指定这些数字的格式?我的尝试:

import plotly.graph_objs as go
fig = go.Figure(data=[go.Table(header=dict(values=['<b>Source</b>', '<b>Installed Capacity (MW)</b>',
                                                       '<b>Optimum Capacities(MW)</b>', '<b>Generation Units (MWh)</b>',
                                                       '<b>PLF (%)</b>', '<b>Generation Share (%)</b>',
                                                       '<b>Annual Generation (MU)</b>']),
                                   cells=dict(values=[list(installCapacities.keys()), list(installCapacities.values()),
                                                      list(optimumCapacities.values()), list(generationUnits.values()),
                                                      list(plf.values()), list(generationShare.values()),
                                                      list(annualGeneration.values())],
                                              align='center', format=['text', 'number', 'number', 'number', 'percentage',
                                                                      'percentage', 'number']))
                          ])

值来自不同的字典,它们的计算非常复杂,这就是为什么我在这里没有提到,我只是想如何指定它们的数据类型,如

text
number
percentage

python plotly decimal string-formatting
1个回答
9
投票

根据文档,您在D3 3.x API 中指定格式。。例如,字符串

.2%
会将您的数字格式化为小数点后两位数字的百分比。

这是一个例子:

import plotly.graph_objects as go

fig = go.Figure(data=[go.Table(
    header=dict(values=["perc","number","text"]),
    cells=dict(values=[["0.111111","0.2333","0.92"],["123","456","789"],["1234text","1234","text"]],
    align="center", format=[".2%","g",""]))]
)
fig.show()

© www.soinside.com 2019 - 2024. All rights reserved.