Python使用matplotlib绘图无法显示中文问题的解决方法

  

本文实例讲述了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 ()      之前      

得到图像如下:

  

 Python使用matplotlib绘图无法显示中文问题的解决方法

  

产生中文乱码的原因就是字体的默认设置中并没有中文字体,所以我们只要手动添加中文字体的名称就可以了

  

手动增加如下代码

        从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使用matplotlib绘图无法显示中文问题的解决方法

  

成功!   

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》,《Python图片操作技巧总结》,《Python数据结构与算法教程》、《Python函数使用技巧总结》,《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

  

希望本文所述对大家Python程序设计有所帮助。

Python使用matplotlib绘图无法显示中文问题的解决方法