当前位置: 首页 > news >正文

彻底解决 macOS 下Matplotlib 中文显示乱码问题

彻底解决 macOS 下Matplotlib 中文显示乱码问题

  1. 在使用 Python 的 Matplotlib 库进行数据可视化时,中文字符的显示常常会出现乱码问题,尤其在 macOS 系统上。
  2. 在网上找了一大堆方法,花了很久,发现不是要安装各种字体就是要改配置,而且字体真的不好找也不好安装。

解决方案概述

  1. 安装支持中文的字体:确保系统中安装了支持中文的字体。本文列出的一般都是系统自带的。
  2. 配置 Matplotlib 使用这些字体:在 Matplotlib 中设置字体,以确保中文字符能够正确显示。
import matplotlib.pyplot as plt
import matplotlib# 设置字体为支持中文的字体
matplotlib.rcParams['axes.unicode_minus'] = False  # 解决负号 '-' 显示为方块的问题
matplotlib.rcParams['font.family'] = 'Kaiti SC'  # 可以替换为其他字体
'''
以下是一些在 macOS 上支持中文的字体:
Kaiti SC(楷体 SC)
Hiragino Sans GB(华文黑体)
Songti SC(宋体 SC)
Heiti TC(黑体 TC)
PingFang HK(苹方 HK)
Arial Unicode MS(Arial Unicode MS
'''

以下代码展示了如何配置 Matplotlib 并绘制每种字体的样式示例:

import matplotlib.pyplot as plt
import numpy as np# 字体列表
fonts = ['Kaiti SC','Hiragino Sans GB','Songti SC','Heiti TC','PingFang HK','Arial Unicode MS'
]# 创建一个图形
plt.figure(figsize=(10, 8))# 绘制每种字体的样式
for i, font in enumerate(fonts):plt.subplot(len(fonts), 1, i + 1)plt.text(0.5, 0.5, f'示例文本 - {font}', fontsize=20, ha='center', va='center', fontfamily=font)plt.axis('off')  # 关闭坐标轴plt.tight_layout()
plt.show()

在这里插入图片描述

http://www.lryc.cn/news/492329.html

相关文章:

  • STM32-- keil 的option for target使用
  • 【MCU】微控制器的编程技术:ISP 与 IAP
  • C#基础题总结
  • Elasticsearch中的节点(比如共20个),其中的10个选了一个master,另外10个选了另一个master,怎么办?
  • 《参与中型项目,领略 Spring 魅力》
  • 计算机网络-GRE(通用路由封装协议)简介
  • 开源电话机器人产品的优点是什么?
  • Spring Boot 集成 Knife4j 的 Swagger 文档
  • 极狐GitLab 17.6 正式发布几十项与 DevSecOps 相关的功能【一】
  • C# 在Word文档模板中,按照占位符插入文字或图片
  • 在使用PCA算法进行数据压缩降维时,如何确定最佳维度是一个关键问题?
  • 深度学习3
  • Qt5.14.2的安装与环境变量及一些依赖库的配置
  • PYNQ 框架 - 时钟系统 + pl_clk 时钟输出不准确问题
  • CDAF / PDAF 原理 | PDAF、CDAF 和 LAAF 对比 | 图像清晰度评价指标
  • 类和对象--中--初始化列表(重要)、隐式类型转化(理解)、最后两个默认成员函数
  • uni-app运行 安卓模拟器 MuMu模拟器
  • java 打印对象所有属性的值 循环
  • k8s认证、授权
  • 基于spring boot的纺织品企业财务管理系统论文
  • @RequestBody和前端的关系以及,如何在前后端之间传递数据?
  • 详解登录MySQL时出现SSL connection error: unknown error number错误
  • 【大数据学习 | Spark-Core】Spark的改变分区的算子
  • Spring Boot Web应用开发:测试
  • 服务器数据恢复—光纤存储FC硬盘数据恢复案例
  • Android Binder技术概览
  • 09 —— Webpack搭建开发环境
  • 深度学习模型:卷积神经网络(CNN)
  • Flask 自定义路由转换器
  • 【淘汰9成NLP面试者的高频面题】LSTM中的tanh和sigmoid分别用在什么地方?为什么?