pandas自学笔记16 pandas可视化
为什么要学习Pandas可视化
之前已经学习了Seaborn可视化,可以说Seaborn可以做到更多更好的可是话,因为Seaborn是在Pandas上实现的。这也是我们为什么要了解Pandas的原因。
Pandas可以直接在Pandas数据帧上进行可视化,因此本章只简要介绍pandas的大致功能:
Pandas 下载数据并对数据做预处理
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import pandas_datareader as pdr
# pip install pandas_datareader
import seaborn as snsdf = pdr.data.DataReader(['DGS6MO','DGS1','DGS2','DGS5','DGS7','DGS10','DGS20','DGS30'], data_source='fred', start='01-01-2022', end='12-31-2022')
df.to_csv('IR_data.csv')
# 如果不能下载,请用pandas.read_csv() 读取数据
df = df.dropna()df = pdr.data.DataReader(['DGS6MO','DGS1','DGS2','DGS5','DGS7','DGS10','DGS20','DGS30'], data_source='fred', start='01-01-2022', end='12-31-2022')
df.to_csv('IR_data.csv')
# 如果不能下载,请用pandas.read_csv() 读取数据
df = df.dropna()
可视化
折线图的绘制
# 绘制利率走势线图
df.plot(xlabel="Time", ylabel="IR level", legend = True, xlim = (df.index.min(), df.index.max()))
美化,子图布置等内容略。
散点图绘制
# 绘制散点图
fig, ax = plt.subplots(figsize = (5,5))
r_df.plot.scatter(x="1 yr", y="2 yr",ax = ax)ax.set_xlim(-0.1, 0.25)
ax.set_ylim(-0.1, 0.25)
竖直柱状图
## 柱状图,竖直
r_df.mean().plot.bar()
plt.savefig("柱状图.svg")
横向柱状图
## 柱状图,水平
r_df.mean().plot.barh()
plt.savefig("水平柱状图.svg")
直方图
# 直方图,子图布置
r_df.plot.hist(subplots=True, layout=(2,4), sharex = True, sharey = True,bins = 20,legend = False)plt.savefig("利率日收益率直方图,子图.svg")
核密度曲线图
# KDE,子图布置
r_df.plot.kde(subplots=True, layout=(2,4), sharex = True, sharey = True,ylim = (0,20),legend = False)plt.savefig("利率日收益率KDE,子图.svg")
箱型图
# 绘制箱型图
r_df.plot.box()plt.savefig("利率日收益率箱型图.svg")