python可视化图表

制作折线图并且保存至桌面

import matplotlib.pyplot as plt
import numpy as np
#没有以下两句,就不会显示中文,识别不出来
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.subplot(1,1,1)
x=np.array([1,2,3,4,5,6,7,8,9])
y=np.array([886,2335,5710,6482,6120,1605,3813,4428,4361])
plt.plot(x,y,color='k',linestyle='dashdot',linewidth=1,marker='o',markersize=5,label='1-9月注册用户数') #绘图

plt.title('1-9月用户注册量',loc='center')#设置标题,标题名及标题的位置
plt.grid(True)#设置网格线
plt.legend()#设置图例,调用显示出plot中的lable值
for a,b in zip(x,y):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=10) 
    #添加数据标签,数据标签的位置,文字大小,注意第二个b表示显示y值


plt.savefig(r'D:\Users\ctrip\Desktop\plot.jpg') #保存图表至桌面

运行上面代码就会输出图表并且保存至桌面喽~
在这里插入图片描述

柱状图

#柱状图

#plt.bar(x,y,height,width=0.8,bottom=None,align='center',color,edgecolor)
#height:表示每根柱子的高度
#width:表示每根柱子的宽度,可以一样 也可以不一样
#bottom:表示每根柱子的底部位置,每根柱子的底部位置可以都一样,也可以不同
#align:表示柱子的位置与x值的关系,有center,edge两个参数可选;
#color:柱子颜色
#edgecolor:柱子边缘的颜色

import matplotlib.pyplot as plt
import numpy as np
#没有以下两句,就不会显示中文,识别不出来
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.subplot(1,1,1)
x=np.array(['东区','西区','南区','北区'])
y=np.array([8566,6482,5335,7310])
plt.bar(x,y,width=0.5,align='center',label='任务量555',color='m')#柱状图
plt.title('全国各分区任务量',loc='center')#标题
for a,b in zip(x,y):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=12)#数据标签
plt.xlabel('分区')#轴名称
plt.ylabel('任务量222')
plt.legend()#图例
plt.savefig(r'D:\Users\ctrip\Desktop\图表\bar.jpg')#保存图片

在这里插入图片描述

簇状条形图

#制作簇状条形图:注意第二个y的x在做条形图以及添加数据标签时,都需要增加1个y的宽度
import matplotlib.pyplot as plt
import numpy as np

plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.subplot(1,1,1)
x=np.array([1,2,3,4])
y1=np.array([8566,5335,7310,6482])
y2=np.array([4283,2667,3655,3241])

plt.bar(x,y1,width=0.3,label='任务量5555')  #y1正常
plt.bar(x+0.3,y2,width=0.3,label='完成量5555')#y2的x在原来基础上+y1的宽度

plt.title("完成情况",loc='center')
plt.xlabel('区域')
plt.ylabel('任务情况')
for a,b in zip(x,y1):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=12)
for a,b in zip(x+0.3,y2):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=12)  #y2的x在原来基础上+y1的宽度

plt.xticks(x+0.15,['东区','西区','南区','北区'])  #重新编辑x轴的刻度,注意每相隔了3个y的宽度
plt.grid(False)
plt.legend()
plt.savefig(r'D:\Users\ctrip\Desktop\图表\bar2.jpg')

在这里插入图片描述

堆积柱形图

#制作堆积柱形图
import matplotlib.pyplot as plt
import numpy as np

plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.subplot(1,1,1)
x=np.array(['东区','西区','南区','北区'])
y1=np.array(['8856,6584,5335,7310'])
y2=np.array(['4283,3241,2667,3555'])

plt.bar(x,y1,width=0.5,label='任务量',align="center")
plt.bar(x,y2,width=0.5,label='完成量',bottom=y1,align="center")

for a,b in zip(x,y1):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=13)
for a,b in zip(x,y2):
    plt.text(a,b,b,ha='center',va='bottom',fontsize=13)

plt.title("完成情况",loc='center')
plt.xlabel("区域")
plt.ylabel("任务情况")

plt.grid(False)
plt.legend(loc='upper center',ncol=2)
plt.savefig(r'D:\Users\ctrip\Desktop\图表\bar堆积图.jpg')

- [ ] List item

堆积图

#堆积图
import matplotlib.pyplot as plt
import matplotlib as mpl

mpl.rcParams["font.sans-serif"] = ["SimHei"]
mpl.rcParams["axes.unicode_minus"] = False

x = [1, 2, 3, 4, 5]
y = [6, 10, 4, 5, 1]
y1 = [2, 6, 3, 8, 5]

plt.bar(x, y, align="center", color="#66c2a5", tick_label=["A", "B", "C", "D", "E"], label="班级A")
plt.bar(x, y1, align="center", bottom=y, color="#8da0cb", label="班级B")

plt.xlabel("测试难度")
plt.ylabel("试卷份数")

plt.legend()

plt.show()
</
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值