python设置 matplotlib 正确显示中文的四种方式

关于Python设置Matplotlib正确显示中文的问题,我可以为您提供下面的四种方式:

一、使用系统中文字体

Matplotlib支持使用系统中安装的中文字体进行显示。只需要将系统中对应的字体文件路径设置到Matplotlib中即可。

比如现在我使用的是Mac电脑,系统中安装了华文细黑字体,可以通过以下代码进行设置:

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 设置中文字体
fm._rebuild()
plt.rcParams['font.family'] = ['Arial Unicode MS']

# 绘图
plt.plot([1,2,3],[4,3,5])
plt.xlabel("横轴")
plt.ylabel("纵轴")
plt.title("中文标题")
plt.show()

二、使用Matplotlib内置中文支持

Matplotlib提供了内置的中文支持,只需要在调用Matplotlib绘图之前,导入一下代码即可:

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 应用内嵌字体
plt.rcParams['font.sans-serif'] = ['SimHei'] 
plt.rcParams['axes.unicode_minus'] = False 

# 绘图
plt.plot([1,2,3],[4,3,5])
plt.xlabel("横轴")
plt.ylabel("纵轴")
plt.title("中文标题")
plt.show()

三、使用第三方字体库

除了系统自带的中文字体之外,也可以使用第三方字体库,比如通过pip install安装的字体库wqy-zenhei:

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 设置中文字体
fm._rebuild()
plt.rcParams['font.family'] = ['WenQuanYi Zen Hei']

# 绘图
plt.plot([1,2,3],[4,3,5])
plt.xlabel("横轴")
plt.ylabel("纵轴")
plt.title("中文标题")
plt.show()

四、手动下载安装中文字体

如果上述方法还不能满足您的需求,您可以手动下载安装您需要的中文字体,并将其设置到Matplotlib中。

下面以微软雅黑字体为例,演示如何手动下载并安装字体:

  • 先到微软官网下载微软雅黑字体的安装包,安装到电脑上。
  • 在Matplotlib中,使用以下代码设置微软雅黑字体:
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 设置中文字体
plt.rcParams['font.family'] = 'Microsoft YaHei'

# 绘图
plt.plot([1,2,3],[4,3,5])
plt.xlabel("横轴")
plt.ylabel("纵轴")
plt.title("中文标题")
plt.show()

以上是四种解决Matplotlib中文显示问题的方式,并且都有相应的示例演示。希望能够帮助到您。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python设置 matplotlib 正确显示中文的四种方式 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • Pandas数据框架中浅层复制与深层复制的区别

    Pandas是Python中非常流行的数据处理库,其中的DataFrame就是一种基于二维表格的数据结构,因此在使用Dataframe时,我们需要掌握深层复制和浅层复制的区别,以避免出现不必要的错误。 深层复制指的就是完全复制一个DataFrame对象到另一个对象中,而新的对象和原始对象完全独立,两者之间没有任何关联性。这意味着我们修改一个对象的值不会影响另…

    python-answer 2023年3月27日
    00
  • 如何在使用Pandas读取csv文件时跳过行

    在使用 Pandas 读取 CSV 文件时,我们经常需要跳过一些行,例如 CSV 文件的头部描述信息。在 Pandas 中,我们可以使用 skiprows 参数来指定需要跳过的行数。 以下是跳过 CSV 文件前两行的示例代码: import pandas as pd # 读取 CSV 文件,跳过前两行 df = pd.read_csv(‘example.cs…

    python-answer 2023年3月27日
    00
  • 如何将Pandas DataFrame写到PostgreSQL表中

    下面是详细的攻略: 1. 准备工作 首先,我们需要安装好Pandas和psycopg2模块,psycopg2用来连接和操作PostgreSQL数据库。可以通过以下命令安装: pip install pandas psycopg2 安装完成后,我们需要连接到PostgreSQL数据库。可以使用以下代码: import psycopg2 conn = psyco…

    python-answer 2023年3月27日
    00
  • 如何使用Pandas的apply()来代替

    当我们需要对Pandas的DataFrame或Series的每个元素进行操作时,可以使用apply()方法。apply()方法可以对一维、二维数据等多种数据类型进行操作。 下面是使用Pandas的apply()方法进行操作的完整攻略步骤: 步骤1:导入相关库 在开始前,需要导入Pandas库,并通过以下代码导入: import pandas as pd 步骤…

    python-answer 2023年3月27日
    00
  • python中pymysql的executemany使用方式

    下面是关于“python中pymysql的executemany使用方式”的完整攻略。 1. pymysql介绍 pymysql是Python下的一个MySQL驱动,可以实现Python与MySQL数据库的交互。它实现了Python DB API 2.0规范,至于DB API 2.0规范的内容,可以在官网查看。 2. executemany概述 在使用pym…

    python 2023年6月13日
    00
  • 如何将Pandas数据帧转换为列表

    将Pandas数据帧(DataFrame)转换为列表(List)是常见的数据处理操作。下面是转换的完整攻略: 导入必要的库 需要导入Pandas库,以及Python内置的列表(List)库。 import pandas as pd 创建一个Pandas数据帧 为了演示转换过程,首先需要创建一个Pandas数据帧。这里以一个包含学生姓名、学号、语文成绩、数学成…

    python-answer 2023年3月27日
    00
  • 如何在Pandas系列中显示最频繁的值

    要显示Pandas系列中的最频繁的值,可以使用value_counts()方法。此方法将返回一个包含每个唯一值出现次数的对象,您可以使用head()方法来获取最频繁的值。 下面是一个演示如何实现此功能的示例代码: import pandas as pd # 创建一个包含重复值的Series对象 data = pd.Series([1, 1, 2, 3, 3,…

    python-answer 2023年3月27日
    00
  • 在Pandas中突出显示每一列的最大值

    首先,在Pandas中,要突出显示每一列的最大值,可以使用style.highlight_max()方法。该方法将每列的最大值突出显示,使其易于查看和分析。 下面是详细步骤: 1.导入Pandas模块 import pandas as pd 2.创建数据 data = {‘name’: [‘Tom’, ‘Jerry’, ‘Mickey’, ‘Minnie’]…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部