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出來的圖片