Pandas数据分析(下)|一文学会pandas数据可视化

Pandas继承和优化了matplotlib,因此可以直接使用Series和DataFrame对象通过plot()方法轻松地绘制图形。

使用pandas绘制图形时通常需配合matplotlib一起使用。

折线图

Series和DataFrame调用plot(),默认绘制折线图。

索引为X轴,数据为Y轴。

import pandas as pdimport matplotlib.pyplot as plt#数据dataDF = pd.DataFrame(data={'a':[1,2,3,4],                            'b':[4,3,2,1]})dataDF.plot(title='Show subplot',legend=True)#title设置图名,legend=True表示展示图例plt.show() #画图

 分开显示多个图

通过设置plot()的参数subplot=True,可以将DataFrame的列自动拆分,然后分开显示为多个图像。

dadataDataFrame.plot(subplots=True,                   title='Show subplot'                   ,legend=True)plt.show()

散点图

使用plot.scatter()创建散点图

参数 x 指定x轴表示的列

参数 y 指定y轴表示的列

参数 s 可以设置每个元素的大小(可省略)

import pandas as pdimport numpy as npimport matplotlib.pyplot as plt#数据data_x = np.random.randint(0,100,size=100)data_y = np.random.randint(0,100,size=100)data = pd.DataFrame({'col_x':data_x,'col_y':data_y})data.plot.scatter(x='col_x',y='col_y',                  s=np.random.randint(1,100,size=100))plt.show()

柱形图

使用plot.bar()创建柱形图。

import pandas as pdimport matplotlib.pyplot as plt#数据data = pd.DataFrame(data={'A':[10,30,40],                          'B':[8,22,34],                          'C':[12,23,50]},                    index=['Class1','Class2','Class3'])#画柱形图data.plot.bar()plt.show()

绘制堆叠柱形图

设置参数stacked=True ,来绘制堆叠的柱形图。  

data.plot.bar(stacked=True)plt.show()

直方图

使用 hist()方法来绘制直方图。通过设置参数bins来调整格子数量。

import pandas as pdimport numpy as npimport matplotlib.pyplot as plt#数据data = pd.DataFrame(data=np.random.randn(500,2))data.hist(bins=100)plt.show()

箱形图

使用plot.box()绘制箱型图。

import pandas as pdimport matplotlib.pyplot as plt#数据data_x = np.random.randint(0,100,size=100)data_y = np.random.randint(50,100,size=100)data_z = np.random.randint(80,160,size=100)data = pd.DataFrame(data={'X':data_x,                          'Y':data_y,                          'Z':data_z})#绘制箱型图data.plot.box()plt.show()

饼图

使用plot.pie()绘制饼图。

默认饼图为椭圆形,可以通过设定参数figsize来指定圆形大小。

import pandas as pdimport matplotlib.pyplot as pltdata = pd.Series(data=[10,20,30,40],                 index=['a','b','c','d'])ax = data.plot.pie(title='Pie Chart')ax.set_ylabel('') #设置y轴标签为空,不设置默认为Noneplt.show()

Pandas绘制饼图的时候,要单独设置一下y轴的标签,如果不想显示就设置为空。

~~End~~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值