import pandas as pd import seaborn as sns import matplotlib.pyplot as plt # 读取数据 df = pd.read_excel("200马力及以上四轮驱动拖拉机.xlsx") # 按照 FactoryName 和 JiJXH 进行分组,计算售价最高值和最低值 grouped = df.groupby(["FactoryName","JiJXH"])['avg_sale'].agg(['min', 'max']).reset_index() grouped = grouped.rename(columns={'min': 'min_sale', 'max': 'max_sale'}) # 将售价最高值和最低值合并到原表中 df = pd.merge(df, grouped, on=["FactoryName","JiJXH"]) # 绘制热力图,并设置颜色取值范围 sns.set_context(font_scale=1.5) plt.figure(figsize=(12,30)) sns.heatmap(df.pivot_table(index=["FactoryName","JiJXH"], columns=["shi"], values="avg_sale"), cmap='YlGnBu', annot=True, fmt='.2f', cbar_kws={'label': '单台售价','shrink':0.8,'aspect':40}, vmin=grouped['min_sale'].min(), vmax=grouped['max_sale'].max()) plt.title('''200马力及以上四轮驱动拖拉机 各生产企业各型号在不同市单台平均售价''') plt.show()如何设置标签字体为仿宋
时间: 2023-08-09 10:10:14 浏览: 175
你可以使用 `sns.set()` 函数来设置 seaborn 的绘图风格,其中包括字体类型、字体大小、线条宽度等属性。具体来说,你需要使用 `font` 参数来设置字体类型,例如:
```python
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
sns.set(font='仿宋')
# 读取数据
df = pd.read_excel("200马力及以上四轮驱动拖拉机.xlsx")
# 按照 FactoryName 和 JiJXH 进行分组,计算售价最高值和最低值
grouped = df.groupby(["FactoryName","JiJXH"])['avg_sale'].agg(['min', 'max']).reset_index()
grouped = grouped.rename(columns={'min': 'min_sale', 'max': 'max_sale'})
# 将售价最高值和最低值合并到原表中
df = pd.merge(df, grouped, on=["FactoryName","JiJXH"])
# 绘制热力图,并设置颜色取值范围
sns.set_context(font_scale=1.5)
plt.figure(figsize=(12,30))
sns.heatmap(df.pivot_table(index=["FactoryName","JiJXH"], columns=["shi"], values="avg_sale"),
cmap='YlGnBu', annot=True, fmt='.2f',
cbar_kws={'label': '单台售价','shrink':0.8,'aspect':40},
vmin=grouped['min_sale'].min(), vmax=grouped['max_sale'].max())
plt.title('''200马力及以上四轮驱动拖拉机 各生产企业各型号在不同市单台平均售价''')
plt.show()
```
在上面的例子中,我们使用了 `sns.set()` 函数将字体类型设置为仿宋。你也可以根据需要设置其他属性来调整绘图风格。
阅读全文