本文实例讲述了Python使用matplotlib绘图无法显示中文问题的解决方法。分享给大家供大家参考,具体如下:
在python中,默认情况下是无法显示中文的,如下代码:
进口matplotlib。pyplot作为plt #定义文本框和箭头格式 decisionNode=dict (boxstyle=熬獬荨?fc=?.8”) leafNode=dict (boxstyle=" round4 ", fc=?.8”) arrow_args=dict (arrowstyle=& lt; -) #绘制带箭头的注解 def plotNode (nodeTxt centerPt、parentPt nodeType): createPlot.ax1。注释(nodeTxt xy=parentPt xycoords=轴部分,xytext=centerPt textcoords=轴部分,va=行摹?公顷=行摹?bbox=nodeType arrowprops=arrow_args) def createPlot (): 无花果=plt。图(1)facecolor=鞍咨? fig.clf () createPlot。ax?=plt。次要情节(111年,frameon=False) plotNode (U的决策节点”,(0.5,0.1),(0.1,0.5),decisionNode) plotNode (U '叶节点”,(0.8,0.1),(0.3,0.8),leafNode) plt.show () createPlot () >之前得到图像如下:
产生中文乱码的原因就是字体的默认设置中并没有中文字体,所以我们只要手动添加中文字体的名称就可以了
手动增加如下代码
从pylab进口* mpl.rcParams['字体。无衬线']=[' SimHei ') >之前源代码修改如下:
进口matplotlib。pyplot作为plt 从pylab进口* mpl.rcParams['字体。无衬线']=[' SimHei ') #定义文本框和箭头格式 decisionNode=dict (boxstyle=熬獬荨?fc=?.8”) leafNode=dict (boxstyle=" round4 ", fc=?.8”) arrow_args=dict (arrowstyle=& lt; -) #绘制带箭头的注解 def plotNode (nodeTxt centerPt、parentPt nodeType): createPlot.ax1。注释(nodeTxt xy=parentPt xycoords=轴部分,xytext=centerPt textcoords=轴部分,va=行摹?公顷=行摹?bbox=nodeType arrowprops=arrow_args) def createPlot (): 无花果=plt。图(1)facecolor=鞍咨? fig.clf () createPlot。ax?=plt。次要情节(111年,frameon=False) plotNode (U的决策节点”,(0.5,0.1),(0.1,0.5),decisionNode) plotNode (U '叶节点”,(0.8,0.1),(0.3,0.8),leafNode) plt.show () createPlot () >之前最终得到图像
成功!
更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》,《Python图片操作技巧总结》,《Python数据结构与算法教程》、《Python函数使用技巧总结》,《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
Python使用matplotlib绘图无法显示中文问题的解决方法