AI智能
改变未来

03.matplotlib高级

import numpy as npimport matplotlib .pyplot as pltimport pandas as pdfrom pandas import Series,DataFrame# 处理中文正常显示plt.rcParams[\'font.sans-serif\'] = [\'FangSong\']# 处理负号显示plt.rcParams[\'axes.unicode_minus\']=False

柱状图

# 取出一张纸plt.figure(1)# plt.subplot( x,y,z)  x行y列的z号位置ax1=plt.subplot(1,1,1)y_data=[15,20,18,25]x_data=np.arange(4)# 画图返回四个柱子rect=ax1.bar(x_data,y_data,width=0.5,color=\'#93ccd3\')​for each in rect:#     获取自身的左下角坐标x=each.get_x()#     获取y轴值height=each.get_height()\'\'\'ax.text(x,y,str) 写一个文本x,y默认为0\'\'\'ax1.text(x+0.15,height+0.3,f\'{height}W\')​ax1.set_xticks(x_data)ax1.set_xticklabels([f\'第{each}季度\' for each in list(\'一二三四\')])​ax1.set_ylim(0,30)# 网格显示ax1.grid()​ax1.set_ylabel(\'销量(单位:万件)\')ax1.set_title(\'xxx2020年销售季度统计\')plt.show()

一个画布多个图

plt.figure(figsize=(12,8))​ax2=plt.subplot(2,2,1)ax2.plot([1,2,3],[1,2,3])​ax3=plt.subplot(2,2,2)ax3.bar([1,2,3],[1,2,3])​ax4=plt.subplot(2,2,3)ax4.pie([1,2,3])​ax5=plt.subplot(2,2,4)ax5.scatter([1,2,3],[1,2,3])

<matplotlib.collections.PathCollection at 0x207d15e90b8>

plt.figure(2)​plt.subplot(1,2,1)plt.plot([1,2,3],[2,1,3])​plt.subplot(1,2,2)plt.bar([1,2,3],[2,1,3])

<BarContainer object of 3 artists>

pandas 对象 直接使用画图函数

s=Series(np.random.randn(10))s.plot()

AxesSubplot:

s.plot(kind=\'bar\')

AxesSubplot:

s.plot(kind=\'barh\')

AxesSubplot:

s2=Series(np.random.randn(10),index=list(\'abcdefghij\'))s2.plot()

AxesSubplot:

Series([1,2,3,4],index=list(\'abcd\')).plot(kind=\'pie\')

AxesSubplot:ylabel=‘None’

df=DataFrame(np.random.randint(1,10,(4,5)),index=list(\'abcd\'),columns=list(\'一二三四五\'))df
一	二	三	四	五a	6	6	9	7	8b	4	9	7	1	1c	9	8	9	5	3d	9	5	5	8	2
df.plot(kind=\'line\')plt.show()

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 03.matplotlib高级