Matplotlib画条形图

阿里云2000元红包!本站用户参与享受九折优惠!

在jupyter环境中一定要加上%matplotlib inline,画出来的图才会在cell中展示。

导包

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np

条形图

生成X和Y数据

n = 12
X = np.arange(n)
#uniform distribution均匀分布
Y1 = (1-X/float(n))*np.random.uniform(0.5,1.0,n)
Y2 = (1-X/float(n))*np.random.uniform(0.5,1.0,n)

画条形图

plt.bar(X,Y1,facecolor='#9999ff',edgecolor='black')
plt.bar(X,-Y2,facecolor='#ff9999',edgecolor='white')


条形图

在顶上加数值

plt.bar(X,Y1,facecolor='#9999ff',edgecolor='black')
plt.bar(X,-Y2,facecolor='#ff9999',edgecolor='white')
#zip将X和Y1打包成元组
for x,y in zip(X,Y1):
    #ha:horizontal alignment横向对其方式
    plt.text(x,y+0.05,'%.2f' % y,ha='center',va='bottom')
for x,y in zip(X,Y2):
    #ha:horizontal alignment横向对其方式
    plt.text(x,-y-0.05,'%-.2f' % y,ha='center',va='top')
plt.xlim(-.5,n)
plt.ylim(-1.25,1.25)
plt.xticks(())
plt.yticks(())
plt.show()


image.png


https://www.jianshu.com/p/cd0124022c26

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论