把图例的字体改成新罗马字体
时间: 2023-09-26 19:09:56 浏览: 374
要将图例(legend)的字体改为新罗马字体(Times New Roman),你可以使用 `FontProperties` 对象,并将它应用于图例文本。以下是一个示例代码:
```python
import seaborn as sns
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
# 假设你已经有了数据和绘图代码
# ...
# 绘制图形
ax = sns.lineplot(x=x_data, y=y_data, hue=hue_data)
# 调整图例样式
legend = ax.legend(loc='upper center', bbox_to_anchor=(0.5, -0.1), ncol=2)
# 创建新罗马字体对象
font = FontProperties(family='Times New Roman')
# 设置图例文字样式
for text in legend.get_texts():
text.set_fontproperties(font) # 将新罗马字体应用于图例文本
# 显示图形
plt.show()
```
在上面的代码中,我们通过 `FontProperties` 对象创建了一个新罗马字体对象,并将其命名为 `font`。然后,通过遍历图例对象中的文本对象,并对每个文本对象调用 `set_fontproperties()` 方法,将新罗马字体应用于图例文本。
根据你的需求,你可以使用其他的字体名称替代 `'Times New Roman'`,以达到你想要的字体样式。
阅读全文