最近不是在投信息安全期刊嘛,然后需要对论文中的图片进行修改,说是要生成eps图或者pdf图,由于图中有中文,倒腾了2-3个小时,终于搞定了,我很享受这种研究成果能够转化成学术界(论文)、工业界(专利)的财富,毕竟这也会给我带来财富,所以,做起来总是积极向上,总是斗志昂扬~

刚刚在pycharm里统计了一下,今年我写了7万行代码,我的同事写了2万行代码,还是比较有成就感的,由于图片中x轴、y轴、标题、图例都是中文,导致生成eps时候总是报错,说字体不对,一直报RuntimeError: Failed to open TrueType font ,搞的很郁闷,在网上查了几个方法都无效后,尝试生成pdf的方案,一下子就成功了~

matplotlib教程plot函数(小计matplotlib生成)(1)

生成pdf的关键:

import matplotlib.pyplot as plt from matplotlib.backends.backend_pdf import PdfPages zhfont1 = matplotlib.font_manager.FontProperties(fname="SourceHanSansCN-Bold.ttf") with PdfPages('test.pdf') as pdf: # plt.plot(....) pdf.savefig()

中文显示的关键:

plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False # 坐标轴中文 ax.set_title(“坐标”, y=-0.25, fontsize=20,fontproperties=zhfont1) # 标题中文 plt.title("标题", fontproperties=zhfont1, fontsize=25, color='black') #标签中文 plt.legend(prop=zhfont1, loc='best')

,