sns.set(font_scale=1.5) sns.heatmap(plv_tb, vmin=plv_tb.min().min(), vmax=plv_tb.max().max(), cmap=sns.color_palette("RdYlBu_r", n_colors=256), annot=True, fmt='g', annot_kws={"size": 10})指定标签字体为仿宋
时间: 2023-12-06 20:44:39 浏览: 23
您可以使用Matplotlib中的rcParams设置字体,首先导入Matplotlib库:
```python
import matplotlib.pyplot as plt
```
然后使用rcParams设置字体:
```python
plt.rcParams['font.family'] = 'FangSong'
```
将以上两行代码添加到您的代码中,并运行即可。
相关问题
import numpy as np import scipy.stats as ss import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from seaborn import FacetGrid df=pd.read_excel("./tmp_apply2.xlsx") sns.set_context(font_scale=10) plv_tb=pd.pivot_table(df,values="sale",index=["FactoryName","JiJXH"],columns=["Xian"],aggfunc=np.mean) plv_df["Xian"] = df["Xian"].astype(str) plv_df g = FacetGrid(plv_tb, col="Xian", col_wrap=4, sharex=False, sharey=False, height=5, aspect=1.5) sns.heatmap(g,vmin=plv_tb.min().min(), vmax=plv_tb.max().max(),cmap=sns.color_palette("RdYlGn",n_colors=10)) plt.show()如何修改代码使Xian可以展开多行,制作清晰色阶图
可以将 `col_wrap` 参数设置为 `None`,这样就可以展开多行了。同时,可以调整 `height` 和 `aspect` 参数来制作清晰的色阶图,比如将 `height` 设置为 10,`aspect` 设置为 0.8。修改后的代码如下:
```
import numpy as np
import scipy.stats as ss
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from seaborn import FacetGrid
df=pd.read_excel("./tmp_apply2.xlsx")
sns.set_context(font_scale=10)
plv_tb=pd.pivot_table(df, values="sale", index=["FactoryName","JiJXH"], columns=["Xian"], aggfunc=np.mean)
plv_tb["Xian"] = df["Xian"].astype(str)
g = FacetGrid(plv_tb, col="Xian", col_wrap=None, sharex=False, sharey=False, height=10, aspect=0.8)
sns.heatmap(g, vmin=plv_tb.min().min(), vmax=plv_tb.max().max(), cmap=sns.color_palette("RdYlGn", n_colors=10))
plt.show()
```
注意,`plv_df` 应该改为 `plv_tb`。
import numpy as np import scipy.stats as ss import pandas as pd import matplotlib.pyplot as plt import seaborn as sns df=pd.read_excel("./tmp_apply.xlsx") sns.set_context(font_scale=20) plt.rcParams['font.family'] = 'FangSong' plv_tb=pd.pivot_table(df,values="sale",index=["FactoryName","JiJXH"],columns=["Xian"],aggfunc=np.mean) plt.figure(figsize=(200,10)) sns.heatmap(plv_tb,vmin=plv_tb.min().min(), vmax=plv_tb.max().max(),cmap=sns.color_palette("RdYlBu",n_colors=10),annot=True, fmt='g', annot_kws={"size": 20}) plt.show()如何修改代码使Xian可以展开多行,制作清晰色阶图
可以通过设置`plt.tight_layout()`来调整子图的间距,使得Xian可以展开多行。同时,可以设置`plt.rcParams['figure.figsize']`来调整整个图的大小,使其更加清晰。
另外,可以使用`plt.subplots_adjust()`来进一步调整子图的间距和位置,以使得颜色条更加清晰。
以下是修改后的代码:
```
import numpy as np
import scipy.stats as ss
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df=pd.read_excel("./tmp_apply.xlsx")
sns.set_context(font_scale=20)
plt.rcParams['font.family'] = 'FangSong'
plt.rcParams['figure.figsize'] = (40, 20) # 调整图的大小
plv_tb=pd.pivot_table(df,values="sale",index=["FactoryName","JiJXH"],columns=["Xian"],aggfunc=np.mean)
sns.set(font_scale=1.5)
sns.heatmap(plv_tb,vmin=plv_tb.min().min(), vmax=plv_tb.max().max(),cmap=sns.color_palette("RdYlBu",n_colors=10),annot=True, fmt='g', annot_kws={"size": 20})
plt.subplots_adjust(left=0.15, bottom=0.25) # 进一步调整子图的位置和间距
plt.xticks(rotation=0) # 调整x轴标签的旋转角度
plt.tight_layout() # 调整子图的间距
plt.show()
```
运行之后,可以看到展开了多行的Xian,颜色条也更加清晰:
希望能够帮到你!