![97540e24d050002cbc67a74b4cbc3ed9.png](https://i-blog.csdnimg.cn/blog_migrate/16b0dc9cec9aa1b7a92b2f79fcd06873.jpeg)
1.线型图
import numpy as npimport pandas as pdfrom pandas import Series,DataFrameimport matplotlib.pyplot as pltnp.random.seed(0)s = Series(np.random.randn(10).cumsum(),index = np.arange(0,100,10))s.plot()plt.show(s.plot())
![e85f7a3ed30fffc39a146973010c6e3e.png](https://i-blog.csdnimg.cn/blog_migrate/7ff49d3a906eeccf6747d36a417b9fa2.jpeg)
简单的DataFrame图标示例
np.random.seed(0)df = DataFrame(np.random.randn(10,4).cumsum(0), columns= ['A','B','C','D'], index = np.arange(0,100,10))plt.show(df.plot())
![986a6850c4dc1f445e614ce5c2b77d8d.png](https://i-blog.csdnimg.cn/blog_migrate/0a4c9a45bcd097ad6e71d0bf54ef4d96.jpeg)
2.柱状图
水平和垂直柱状图
fig,axes = plt.subplots(2,1)data = Series(np.random.rand(16),index = list('abcdefghijklmnop'))data.plot(kind = 'bar',ax = axes[0],color = 'b',alpha = 0.9)data.plot(kind = 'barh',ax = axes[1],color = 'b',alpha = 0.9)
![1e7823166380a40bba18479903cecd40.png](https://i-blog.csdnimg.cn/blog_migrate/0a838d9421a29d924114d7cddd6a3d44.jpeg)
DataFrame柱状图示例
df = DataFrame(np.random.rand(6,4), index = ['one','two','three','four','five','six'], columns = pd.Index(['A','B','C','D'],name = 'Genus'))plt.show(df.plot(kind = 'bar'))
![159a68a0f3f2d122ed0c0b5c9f2b4ddb.png](https://i-blog.csdnimg.cn/blog_migrate/51ff1f7bf866a6f2383288ceaa1e2e45.jpeg)
df = DataFrame(np.random.rand(6,4), index = ['one','two','three','four','five','six'], columns = pd.Index(['A','B','C','D'],name = 'Genus'))plt.show(df.plot(kind = 'bar',stacked = True))
![bbcf60534bf6d5e726465e5905dcc386.png](https://i-blog.csdnimg.cn/blog_migrate/da7a21c0094450757ea0eca17b8e7917.jpeg)
3.直方图和密度图
直方图是一种可以对值频率进行离散化显示的柱状图,通过Series的hist方法
random随机数百分比的直方图
a = np.random.random(10)b = a/a.sum()s = Series(b)plt.show(s.hist(bins = 100)) #bins直方图的柱数
![5b95d3526515ce74a643fcd6067f9179.png](https://i-blog.csdnimg.cn/blog_migrate/b8a18f40de1eed85bc83f9f6a8b518dd.jpeg)
random随机数百分比的密度图
a = np.random.random(10)b = a/a.sum()s = Series(b)plt.show(s.plot(kind = 'kde'))
![b76b92f2e463df537eb7b45e30db7324.png](https://i-blog.csdnimg.cn/blog_migrate/de25776275a09ff77eaf7d2c05f9e91d.jpeg)
带有密度估计的规格化直方图
%matplotlib inlinecomp1 = np.random.normal(0,1,size = 200)comp2 = np.random.normal(10,2,size = 200)values = Series(np.concatenate([comp1,comp2]))p1 = values.hist(bins = 100,alpha = 0.3,color = 'k',normed = True)p2 = values.plot(kind = 'kde',style = '--',color = 'r')
![5a0e915add6e30c65ded38c02a1b0ebc.png](https://i-blog.csdnimg.cn/blog_migrate/fe478dc9b538f1ce70b8f3ac1e9ee8c4.jpeg)
4.散布图
一张简单散布图
df = DataFrame(np.random.randint(0,100,size = 100).reshape(50,2),columns = ['A','B'])df.plot('A','B',kind = 'scatter',title = 'x Vs y')
![0464b48dfe046fbf0b83ae348eb492df.png](https://i-blog.csdnimg.cn/blog_migrate/3ee53ea26743429c0cde8e21f975168a.jpeg)
散布图矩阵
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame%matplotlib inlinedf = DataFrame(np.random.randn(200).reshape(50,4),columns = ['A','B','C','D'])pd.plotting.scatter_matrix(df,diagonal = 'kde',color = 'k')
![c6266aae5454badb2cda244e73ca64f6.png](https://i-blog.csdnimg.cn/blog_migrate/f6c21896b4aff6dad4a939e875013ccb.jpeg)