pandas——可视化

相关知识

绘图方法允许除了默认的线图之外的一些绘图样式,这些方法可以通过plot()的关键字参数kind提供。这些包括:

bar 、barh:绘制条形图

hist:绘制直方图

box:绘制箱型图

kde、density:绘制密度图

area:面积图

scatter:绘制散点图

hexbin:棱形图

pie:绘制饼图

实操

1.打开PyCharm,选择Create New Project,

pandas——可视化

创建名为pandas_visualization的项目。

2.打开pandas_visualization项目,右键选择New=>Python File,

pandas——可视化

创建名为test_plot的Python文件。

pandas——可视化

3.打开test_plot.py文件,编写代码,使用Series的plot绘制Series中数据的分布图

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
  
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000)) #创建一个Series  
ts = ts.cumsum() #对Series数据进行累加求和  
ts.plot()        #使用plot方法绘制Series中数据分布图  
plt.show()  

 

4.代码编写完毕,在test_plot.py文件内,点击右键=》Run ‘test_plot’,执行test_plot.py文件。

pandas——可视化

5.在屏幕上打印出下面的图。

pandas——可视化

6.创建一个DataFrame名为df,使用df的plot绘制df中数据的分布图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
  
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000)) #创建一个Series  
df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD'))  #创建一个DataFrame  
df = df.cumsum() #对df数据进行累加求和  
  
df.plot()  
plt.show()  

 

7.运行代码,在屏幕上打印出下面的图。

pandas——可视化

8.创建一个DataFrame名为df,使用df的plot方法绘制df第6行数据的条形图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000)) #创建一个Series  
df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD'))  #创建一个DataFrame  
df = df.cumsum() #对df数据进行累加求和  
df.iloc[5].plot(kind='bar')  
plt.axhline(0, color='k')  
plt.show()  

 

9.运行代码,在屏幕上打印出下面的图。

pandas——可视化

10.创建一个DataFrame名为df2,使用df2的plot.bar()方法绘制df2数据的条形图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])  
df2.plot.bar()  
plt.show()  

 

11.运行代码,在屏幕上打印出下面的图。

pandas——可视化

12.使用plot.bar方法对上述df2数据绘制一个堆叠的条形图,通过设置参数stacked=True,代码如下(将代码覆盖写入到test_plot.py文件中)

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])  
df2.plot.bar(stacked=True)  
plt.show()  

 

13.运行代码,在屏幕上打印出下面的图。

pandas——可视化

14.使用plot.barh方法对上述df2数据,通过设置参数stacked=True,绘制一个水平堆叠条形图,代码如下(将代码覆盖写入到test_plot.py文件中)

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])  
df2.plot.barh(stacked=True)  
plt.show()  

 

15.运行代码,在屏幕上打印出下面的图。

pandas——可视化

16.创建一个DataFrame名为df3,使用df3的plot.hist()方法绘制df3数据的直方图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(alpha=0.5)  
plt.show()  

 

17.运行代码,在屏幕上打印出下面的图。

pandas——可视化

18.使用plot.hist()方法对上述df3数据,通过设置堆叠参数stacked=True,设置条数大小参数bins=20,绘制一个堆叠直方图,代码如下(将代码覆盖写入到test_plot.py文件中)

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(stacked=True, bins=20)  
plt.show()  

 

19.运行代码,在屏幕上打印出下面的图。

pandas——可视化

20.创建一个DataFrame名为df4,使用df4的plot.box()方法绘制df3数据的箱型图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df4 = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])  
df4.plot.box()  
plt.show()  

 

21.运行代码,在屏幕上打印出下面的图。

pandas——可视化

22.创建一个DataFrame名为df5,使用df5的plot.scatter()方法绘制df5数据的散点图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df5 = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])  
df5.plot.scatter(x='a', y='b');  
plt.show()  

 

23.运行代码,在屏幕上打印出下面的图。

pandas——可视化

24.创建一个DataFrame名为df6,使用df6的plot.pie()方法绘制df6数据的饼图,代码如下(将代码覆盖写入到test_plot.py文件中)。

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df6 = pd.DataFrame(3 * np.random.rand(4, 2), index=['a', 'b', 'c', 'd'], columns=['x', 'y'])  
df6.plot.pie(subplots=True, figsize=(8, 4))  
plt.show()  

 

25.运行代码,在屏幕上打印出下面的图。

pandas——可视化