seaborn-data数据下载网址
https://codechina.csdn.net/mirrors/mwaskom/seaborn-data?utm_source=csdn_github_accelerator
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
#用行和列标签绘制
flights_long = sns.load_dataset("flights")
flights = flights_long.pivot("month", "year", "passengers")
# 绘制x-y-z的热力图,比如 年-月-销量 的热力图
f, ax = plt.subplots(figsize=(9, 6))
sns.heatmap(flights, ax=ax)
#设置坐标字体方向
label_y = ax.get_yticklabels()
plt.setp(label_y, rotation=360, horizontalalignment='right')
label_x = ax.get_xticklabels()
plt.setp(label_x, rotation=45, horizontalalignment='right')
plt.show()
flights是seaborn自带的文件即使下载下来运行这个程序依旧报错:请求错误
解决一:翻墙
解决二:把文件下载下来用Python的csv识别csv文件
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
sns.set()
data = pd.read_csv("fs.csv")
#print(data.head())
flights = data.pivot("month","year","passengers")
#print(flights)
f, ax = plt.subplots(figsize=(9, 6))
#使用不同的颜色,annot将数值写到热力图上,linewidth每个网格用线隔开
sns.heatmap(flights, annot=True, fmt="d", linewidths=.5, cmap='YlGnBu', ax=ax)
label_y = ax.get_yticklabels()
plt.setp(label_y, rotation=360, horizontalalignment='right')
label_x = ax.get_xticklabels()
plt.setp(label_x, rotation=45, horizontalalignment='right')
plt.show()