Python 量化数据可视化
Python 量化数据可视化可以使用 Matplotlib 和 Seaborn 库。
安装 Matplotlib 和 Seaborn 可以在终端或命令提示符中运行:
pip install matplotlib seaborn
Matplotlib 详细内容可以参考: Matplotlib 教程
本章节主要为大家介绍 Seaborn 库的使用。
Seaborn 库
Seaborn 是一个基于 Matplotlib 的数据可视化库,专注于统计图形的绘制。
Seaborn 提供了一些高层次的界面和颜色主题,使得在 Python 中创建漂亮的统计图表变得更加容易。
Seaborn 的目标是使数据可视化变得更简单,同时也让图表更具有吸引力。
1. 统计图形的简单创建
Seaborn 提供了一系列内置的绘图函数,可以轻松地创建各种统计图形,如散点图、直方图、箱线图等。
import seaborn as sns
import matplotlib.pyplot as plt
# 创建散点图
sns.scatterplot(x='sepal_length', y='sepal_width', data=iris)
plt.show()
2. 内置颜色主题
Seaborn 提供了内置的颜色主题,可以让你轻松地改变图表的外观,使其更具有吸引力。
# 使用 Seaborn 颜色主题 sns.set(style="whitegrid")
3. 数据集可视化
Seaborn 包含一些内置的数据集,可以直接用于绘图,例如,tips 和 flights 数据集。
# 使用内置数据集 tips = sns.load_dataset("tips")
4. 分类数据的可视化
Seaborn 对于分类数据的处理非常方便,可以轻松地创建分组柱状图、箱线图等。
# 创建分组柱状图 sns.barplot(x="day", y="total_bill", hue="sex", data=tips)
5. 矩阵数据的可视化
Seaborn 提供了一些专门用于可视化矩阵数据的函数,例如热力图(heatmap)。
# 创建热力图 corr_matrix = df.corr() sns.heatmap(corr_matrix, annot=True, cmap="coolwarm")
6. 分面绘图
Seaborn 支持分面绘图,可以根据数据的子集创建多个小图,以更全面地展示数据。
# 分面绘图 sns.relplot(x="total_bill", y="tip", hue="day", col="time", data=tips)
Seaborn 提供了大量的图形选项和参数,以满足不同类型的数据可视化需求。
总体而言,Seaborn 是一个功能强大而易用的库,适用于初学者和专业数据科学家,能够帮助用户更轻松地创建具有吸引力的统计图表。如果你已经熟悉 Matplotlib,Seaborn 是一个很好的补充,可以让你更高效地进行数据可视化。
实例
接下来吗我们使用 Python 进行一个简单的量化实例,你可以结合 yfinance 获取贵州茅台(600519.SS)的股票数据,然后使用 seaborn 进行数据可视化。
以下是一个简单的例子,演示如何下载茅台股票数据,并使用 seaborn 绘制股票的收盘价走势图:
import yfinance as yf
import seaborn as sns
import matplotlib.pyplot as plt
# 获取贵州茅台的股票数据
maotai_data = yf.download("600519.SS", start="2020-01-01", end="2023-01-01")
# 选取收盘价数据
closing_prices = maotai_data['Close']
# 使用 seaborn 绘制走势图
plt.figure(figsize=(12, 6))
sns.lineplot(x=closing_prices.index, y=closing_prices.values, label='Maotai Closing Prices')
plt.title('Maotai Stock Closing Prices Over Time')
plt.xlabel('Date')
plt.ylabel('Closing Price (CNY)')
plt.legend()
plt.show()
执行以上代码,输出结果为: