Python Plotly绘制水平条形图:基础与层叠示例
本文介绍如何使用Python Plotly库绘制水平条形图。通过设置Bar函数的orientation参数为'h'实现横向显示,并利用barmode='stack'参数绘制层叠水平条形图。文中包含净资产收益率对比及稀有金属期货持仓量的具体代码示例与运行结果分析,帮助开发者快速掌握相关绘图技巧。
Python Plotly水平条形图绘制基础
本文分享了使用Python绘制水平条形图的完整代码示例,供读者参考学习。
水平条形图的绘制逻辑与柱状图相似,建议读者先参考此前关于柱状图绘制的博客内容以建立基础认知。
在Plotly中绘制水平条形图时,需在Bar函数内设置orientation参数为'h'以指定横向方向。
其余参数配置与柱状图保持一致。此外,可通过设置barmode参数为'stack'来进一步控制条形图的显示模式。
利用上述配置,可以绘制层叠水平条形图以及瀑布式水平条形图,以展示更复杂的数据关系。
import plotly as py
import plotly.graph_objs as go
pyplt = py.offline.plot
data = [go.Bar(
x=[29.41, 34.62, 30.16],
y=['资产1', '资产2', '资产3'],
orientation = 'h'
)]
layout = go.Layout(
title = '净资产收益率对比'
)
figure = go.Figure(data = data, layout = layout)
pyplt(figure, filename='tmp/1.html')

运行前述代码后,生成的图例显示效果与柱状图类似,仅方向调整为水平。
若要绘制水平的层叠条形图,只需将参数barmode设置为'stack',即可生成对应的水平层叠图形。
层叠水平条形图实现示例
import plotly as py
import plotly.graph_objs as go
pyplt = py.offline.plot
trace1 = go.Bar(
y = ['CU.SHF', 'AG.SHF', 'AU.SHF'],
x = [21258, 30279, 8056],
name = '期货1',
orientation = 'h',
marker = dict(
color = '#104E8B',
line = dict(
color = '#104E8B',
width = 3)
)
)
trace2 = go.Bar(
y = ['CU.SHF', 'AG.SHF', 'AU.SHF'],
x = [19853, 9375, 4063],
name = '期货2',
orientation = 'h',
marker = dict(
color = '#1874CD',
line = dict(
color = '#104E8B',
width = 3)
)
)
trace3 = go.Bar(
y = ['CU.SHF', 'AG.SHF', 'AU.SHF'],
x = [4959, 13018, 8731],
name = '期货3',
orientation = 'h',
marker = dict(
color = '#1C86EE',
line = dict(
color = '#104E8B',
width = 3)
)
)
data = [trace1, trace2,trace3]
layout = go.Layout(
title = '稀有金属期货持仓量对比图',
barmode='stack'
)
fig = go.Figure(data=data, layout=layout)
pyplt(fig, filename='tmp/2.html')

执行相关代码后,可获得如图所示的水平层叠条形图结果。
水平条形图的绘制方法与柱状图基本一致,其他细节此处不再赘述。
以上内容为本文的全部分享,希望能为读者的学习提供有益帮助,同时也欢迎大家继续支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









