乐于分享
好东西不私藏

在Excel中使用Python:在Python绘制的图表中显示中文标签

在Excel中使用Python:在Python绘制的图表中显示中文标签
学习Excel技术,关注微信公众号:
excelperfect

标签:Excel函数PY函数

在前面的文章《Excel中使用Python:使用Matplotlib创建散点图》中,我们使用鸢尾花数据集绘制了关于花萼长度和宽度对比的散点图,其中的坐标轴标签和标题都是英文。如果我们想要使其显示为中文,该怎么做呢?

如果仅仅修改原来的代码,将其中的英文用中文替代,如下所示:

import matplotlib.pyplot as pltplt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))#添加x和y轴标签plt.xlabel('花萼长度')plt.ylabel('花萼宽度')#添加标题plt.title('Sepal length and width analysis')

运行后,其结果如下图1所示。

1

可以看到,要显示坐标轴标签的地方为小方框,没有显示中文,而英文标题仍正常显示。

我们可以使用excel.FontPath.CHINESE_SIMPLIFIED来让图中正常显示中文。对原代码修改如下:

import matplotlib.pyplot as pltfrom matplotlib.font_manager import FontPropertiesfont_path = excel.FontPath.CHINESE_SIMPLIFIEDfont_properties = FontProperties(fname=font_path)plt.rcParams['font.family'] = font_properties.get_name()plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))#添加x和y轴标签plt.xlabel('花萼长度')plt.ylabel('花萼宽度')#添加标题plt.title('花萼长度和宽度分析')

运行后的结果如下图2所示。

2

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。