Pandas绘图

Reads: 891 Edit

Pandas在Matplotlib模块的基础上封装了一个plot()接口,可以使绘图更加方便快捷!

>>> import numpy as np
>>> import pandas as pd
>>> import matplotlib.pyplot as plt

1 散点图

>>> df1 = pd.DataFrame(np.random.rand(20, 2), columns=['x', 'y'])                               
>>> df1.plot.scatter(x='x',y='y')
>>> plt.show()

pyt-74

2 线图

>>> df1 = pd.DataFrame(np.random.rand(20, 2), columns=['x', 'y'])  
>>> df1.plot()
>>> plt.show()

pyt-75

3 柱状图

>>> df2 = pd.DataFrame(np.random.rand(4,3),columns=['firm1','firm2','firm3'],index=['Q1','Q2','Q3','Q4'])                            
>>> df2.plot.bar()
>>> plt.show()

pyt-76

>>> df2.plot.bar(stacked=True)
>>> plt.show()

pyt-77

4 饼图

>>> df3 = pd.DataFrame(np.random.rand(4,1),columns=['firm1'],index=['Q1','Q2','Q3','Q4'])
>>> df3.plot.pie(subplots=True)
>>> plt.show()

pyt-78

5 箱线图

>>> df4 = pd.DataFrame(np.random.rand(50,3),columns=['firm1','firm2','firm3'])                               
>>> df4.plot.box()
>>> plt.show()

pyt-79

6 区域图

>>> df5 = pd.DataFrame(np.array([[100,124,147],[200,234,257],[303,338,349],[401,482,490],[356,399,421],                              
>>> df5.plot.area()
>>> plt.show()

pyt-80

7 直方图

>>> df6_1 = pd.DataFrame({'classA':np.random.normal(0,1,100)})                             
>>> df6_1.plot.hist()
>>> plt.rc('axes', unicode_minus=False)  			## 解决坐标轴符号显示乱码问题!   
>>> plt.show()

pyt-81

>>> df6_2 = pd.DataFrame({'classA':np.random.normal(0,1,100),'classB':np.random.normal(0,1,100),'classC':np.random.normal(0,1,100),'classD':np.random.normal(0,1,100)})                          
>>> df6_2.diff().hist()
>>> plt.rc('axes', unicode_minus=False)     		## 解决坐标轴符号显示乱码问题!         
>>> plt.show()

pyt-82


Comments

Make a comment