Explication détaillée des méthodes efficaces pour afficher les caractères chinois dans matplotlib

WBOY
Libérer: 2024-01-13 14:12:13
original
1379 Les gens l'ont consulté

Explication détaillée des méthodes efficaces pour afficher les caractères chinois dans matplotlib

Explication détaillée de la méthode efficace d'affichage du chinois dans matplotlib, des exemples de code spécifiques sont nécessaires

Dans la visualisation de données, matplotlib est une bibliothèque très couramment utilisée, qui fournit des fonctions de dessin puissantes et flexibles. Cependant, matplotlib ne prend pas en charge l'affichage des caractères chinois par défaut, ce qui présente des désagréments pour les utilisateurs. Cet article présentera quelques méthodes efficaces pour afficher le chinois dans matplotlib et fournira des exemples de code spécifiques.

Méthode 1 : Utiliser les polices système

matplotlib peut afficher le chinois en définissant le chemin de la police système. Tout d'abord, nous devons trouver le fichier de police correspondant dans le système. Par exemple, le chemin de la police Microsoft Yahei est « C:/Windows/Fonts/msyh.ttc ».

import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

font = FontProperties(fname='C:/Windows/Fonts/msyh.ttc')
plt.rcParams['font.family'] = font.get_name()

# 绘图代码
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.xlabel('横轴', fontproperties=font)
plt.ylabel('纵轴', fontproperties=font)
plt.title('示例图', fontproperties=font)
plt.show()
Copier après la connexion

Méthode 2 : Utiliser des polices personnalisées

S'il n'y a pas de fichier de police correspondant dans le système, nous pouvons placer le fichier de police requis dans le répertoire actuel et utiliser des polices personnalisées pour afficher le chinois.

import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

font = FontProperties(fname='myfont.ttf')
plt.rcParams['font.family'] = font.get_name()

# 绘图代码
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.xlabel('横轴', fontproperties=font)
plt.ylabel('纵轴', fontproperties=font)
plt.title('示例图', fontproperties=font)
plt.show()
Copier après la connexion

Méthode 3 : Utiliser le module d'affichage chinois

Dans matplotlib, il existe des modules tiers qui peuvent être utilisés pour afficher directement le chinois, tels que matplotlib-chinafonts et matplotlib-charset. Ces modules peuvent être installés via la commande pip et utilisés selon les instructions.

import matplotlib.pyplot as plt
import matplotlib.font_manager as mfm

font_path = "C:/Windows/Fonts/msyh.ttc"
prop = mfm.FontProperties(fname=font_path)
plt.rcParams['font.family'] = prop.get_name()

# 绘图代码
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.xlabel('横轴', fontproperties=prop)
plt.ylabel('纵轴', fontproperties=prop)
plt.title('示例图', fontproperties=prop)
plt.show()
Copier après la connexion

Résumé :

Lors de l'utilisation de matplotlib pour la visualisation de données, l'affichage du chinois est une exigence courante. Cet article présente trois méthodes efficaces pour afficher le chinois dans matplotlib et fournit des exemples de code spécifiques. En définissant le chemin de la police système, en utilisant des polices personnalisées et en utilisant des modules d'affichage chinois tiers, nous pouvons facilement obtenir un affichage chinois. J'espère que les lecteurs pourront utiliser le chinois autant qu'ils le souhaitent lorsqu'ils utilisent matplotlib et améliorer l'effet de la visualisation des données !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal