python使用Plotly绘图工具绘制水平条形图

yipeiwu_com7年前Python基础

本文实例为大家分享了python绘制水平条形图的具体代码,供大家参考,具体内容如下

水平条形图与绘制柱状图类似,大家可以先看看我之前写的博客,如何绘制柱状图

水平条形图需要在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')

运行上述代码,可以得到如上图所示的层叠水平条形图。

水平条形图和柱状图的画法基本上相同。剩下的就不细讲了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用datetime模块计算各种时间间隔的方法

本文实例讲述了python使用datetime模块计算各种时间间隔的方法。分享给大家供大家参考。具体分析如下: python中通过datetime模块可以很方便的计算两个时间的差,dat...

Python GUI编程完整示例

Python GUI编程完整示例

本文实例讲述了Python GUI编程。分享给大家供大家参考,具体如下: import os from time import sleep from tkinter import *...

视觉直观感受若干常用排序算法

视觉直观感受若干常用排序算法

直观感受几种常用排序算法,具体内容如下 1 快速排序 介绍:   快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下...

Python之日期与时间处理模块(date和datetime)

Python之日期与时间处理模块(date和datetime)

前言 在开发工作中,我们经常需要用到日期与时间,如: 作为日志信息的内容输出 计算某个功能的执行时间 用日期命名一个日志文件的名称 记录或展示某文章的发布或修改时间...

二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)

可以使用Python的email模块来实现带有附件的邮件的发送。 SMTP (Simple Mail Transfer Protocol)邮件传送代理 (Mail Transfer Ag...