Pandas学习笔记系列:
- Pandas学习笔记(一)基本介绍
- Pandas学习笔记(二)选择数据
- Pandas学习笔记(三)修改&添加值
- Pandas学习笔记(四)处理丢失值
- Pandas学习笔记(五)合并 concat
- Pandas学习笔记(六)合并 merge
- Pandas学习笔记(七)plot画图
原文:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/3-8-pd-plot/ 本文有删改
这次我们讲如何将数据可视化. 首先import
我们需要用到的模块,除了 pandas
,我们也需要使用 numpy
生成一些数据,这节里使用的 matplotlib
仅仅是用来 show
图片的, 即 plt.show()
。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
创建一个Series
这是一个线性的数据,我们随机生成1000个数据,Series
默认的 index
就是从0开始的整数,但是这里我显式赋值以便让大家看的更清楚
# 随机生成1000个数据
data = pd.Series(np.random.randn(1000),index=np.arange(1000))
# 为了方便观看效果, 我们累加这个数据
data.cumsum()
# pandas 数据可以直接观看其可视化形式
data.plot()
plt.show()
就这么简单,熟悉 matplotlib 的朋友知道如果需要plot一个数据,我们可以使用 plt.plot(x=, y=)
,把x
,y
的数据作为参数存进去,但是data
本来就是一个数据,所以我们可以直接plot
。 生成的结果就是下图:
Dataframe 可视化
我们生成一个1000*4 的DataFrame
,并对他们累加
data = pd.DataFrame(
np.random.randn(1000,4),
index=np.arange(1000),
columns=list("ABCD")
)
data.cumsum()
data.plot()
plt.show()
这个就是我们刚刚生成的4个column
的数据,因为有4组数据,所以4组数据会分别plot出来。plot 可以指定很多参数,具体的用法大家可以自己查一下这里
除了plot
,经常会用到还有scatter
,这个会显示散点图,首先给大家说一下在 pandas
中有多少种方法
- bar
- hist
- box
- kde
- area
- scatter
- hexbin
但是我们今天不会一一介绍,主要说一下 plot
和 scatter
. 因为scatter
只有x
,y
两个属性,我们我们就可以分别给x
, y
指定数据
ax = data.plot.scatter(x='A',y='B',color='DarkBlue',label='Class1')
然后我们在可以再画一个在同一个ax上面,选择不一样的数据列,不同的 color 和 label
# 将之下这个 data 画在上一个 ax 上面
data.plot.scatter(x='A',y='C',color='LightGreen',label='Class2',ax=ax)
plt.show()
下面就是我plot出来的图片