import matplotlib.pyplot as plt
import numpy as np
from matplotlib.font_manager import FontProperties # 步骤一
x = np.arange(5)
y1,y2,y3 = x, x**2, x*2
plt.plot(x, y1, marker='^', color="k", label="折线图一")
plt.plot(x, y2, marker="o", color="k", label="折线图二")
plt.xlabel("时间", fontsize=13)
plt.ylabel("树脂", fontsize=13)# 显示图例
plt.legend(prop=font)
plt.show()
上述的代码出来的结果如下所示:
为了结果上述的问题,我们只需要改变代码就好了,具体如下所示:
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.font_manager import FontProperties # 步骤一
font = FontProperties(fname="/System/Library/Fonts/Hiragino Sans GB.ttc", size=14)# 步骤二
x = np.arange(5)
y1,y2,y3 = x, x**2, x*2
plt.plot(x, y1, marker='^', color="k", label="折线图一")
plt.plot(x, y2, marker="o", color="k", label="折线图二")
plt.xlabel("时间", fontsize=13, fontproperties=font)
plt.ylabel("树脂", fontsize=13, fontproperties=font)# 显示图例
plt.legend(prop=font)
plt.show()
词云乱码的问题也是一样,只需要改变代码,增加font_path路径就好了:
wordcloud = WordCloud(width=1500, height=1000, background_color='white', font_path="/System/Library/Fonts/Hiragino Sans GB.ttc",)
对于其它的一些饼图之类的可以通过如下的方式进行设置,具体代码如下所示:
p = plt.pie([87,13], wedgeprops=wedgeprops, startangle=90, colors=['#5DADE2','#515A5A'],
autopct='%.1f%%', labels=['爱的','b'])
plt.text(0,0,"煤矿", ha='center', va='center', fontsize=42, fontproperties=mpl.font_manager.FontProperties(
fname="/System/Library/Fonts/Hiragino Sans GB.ttc"))for front in p[1]:
front.set_fontproperties(mpl.font_manager.FontProperties(
fname="/System/Library/Fonts/Hiragino Sans GB.ttc"))
plt.show()