win10中plt绘图显示中文

本文介绍如何在Matplotlib中配置中文显示,包括在不同操作系统下的设置方法。对于Ubuntu用户,需要额外安装中文字体;而对于Windows 10用户,则可以直接使用系统自带的中文字体。

直接在绘图代码中插入以下代码即可 

import matplotlib.pyplot as plt
# 支持中文
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号


说明1:

在ubuntu系统上用plt显示中文的教程见:

ubuntu安装中文字体,python plt 绘图显示中文_wzg2016的博客-CSDN博客

说明2:

在win10上显示中文,相比在ubuntu上显示中文,少了安装中文字体的步骤,因为win10上已经自备中文字体了。

在使用 `matplotlib.pyplot`(`plt`)进行绘图时,有时会出现负号(`-`)无法正常显示的问题,尤其是在处理中文显示时更为常见。该问题通常与字体设置或 `unicode_minus` 参数配置有关。 默认情况下,`matplotlib` 使用的字体可能不支持中文或某些特殊符号,同时 `axes.unicode_minus` 参数默认为 `True`,表示使用 Unicode 编码显示负号。然而,在某些环境下,尤其是未正确配置中文字体的情况下,负号可能无法正常显示为“-”,而是显示为其他符号或方框。 ### 解决方法 1. **设置 `unicode_minus` 为 `False`** 通过将 `plt.rcParams['axes.unicode_minus']` 设置为 `False`,可以禁用 Unicode 编码的负号显示,改用 ASCII 编码的减号字符(即标准的“-”),从而避免显示异常。 ```python import matplotlib.pyplot as plt # 禁用 Unicode 编码的负号显示 plt.rcParams['axes.unicode_minus'] = False ``` 2. **设置中文字体(可选但推荐)** 如果绘图中涉及中文标签或标题,建议同时设置支持中文的字体,如 `SimHei`,以确保中文和符号都能正常显示。 ```python # 设置中文字体 plt.rcParams['font.sans-serif'] = ['SimHei'] ``` 3. **完整示例代码** 以下是一个完整的绘图示例,包含解决负号不显示的配置: ```python import numpy as np import matplotlib.pyplot as plt # 解决中文显示问题和负号显示问题 plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False x = np.linspace(-10, 10, 400) y = -x**2 # 包含负号的函数 plt.plot(x, y, label=r'$y = -x^2$') plt.title("负号显示测试") plt.xlabel("x 轴") plt.ylabel("y 轴") plt.legend() plt.grid(True) plt.show() ``` 通过上述配置,可以确保在 `matplotlib` 绘图中负号能够正常显示,同时也能兼容中文字符的显示需求[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值