Maison  >  Article  >  développement back-end  >  Résolvez facilement le problème des caractères chinois tronqués dans matplotlib, les experts vous apprennent une astuce

Résolvez facilement le problème des caractères chinois tronqués dans matplotlib, les experts vous apprennent une astuce

WBOY
WBOYoriginal
2024-01-04 13:45:21813parcourir

Résolvez facilement le problème des caractères chinois tronqués dans matplotlib, les experts vous apprennent une astuce

Les experts vous apprennent une astuce pour résoudre facilement le problème des caractères chinois tronqués de matplotlib. Des exemples de code spécifiques sont nécessaires

Introduction :
Dans le processus d'utilisation de Python pour l'analyse et la visualisation de données, nous utilisons souvent matplotlib, un outil couramment utilisé. bibliothèque de dessins . Cependant, il arrive parfois que les caractères chinois dans les graphiques que nous dessinons à l'aide de matplotlib soient tronqués, ce qui nous cause des problèmes inutiles. Aujourd'hui, nous allons partager une méthode simple pour résoudre le problème des caractères chinois tronqués dans matplotlib et fournir des exemples de code spécifiques.

Texte :
La façon de résoudre le problème des caractères chinois tronqués dans matplotlib est de définir la police. Tout d’abord, nous devons déterminer les polices chinoises installées sur le système d’exploitation. Dans des circonstances normales, certaines polices chinoises sont installées par défaut sur les systèmes Windows. Vous pouvez afficher la liste des polices disponibles dans le système via le code suivant :

import matplotlib.font_manager as fm
font_list = fm.findSystemFonts()
font_names = [fm.get_font(font).family_name for font in font_list]
print(font_names)

L'exécution du code ci-dessus affichera la liste des polices disponibles dans le système. voyez quelque chose de similaire à "SimSun", "SimHei", "Microsoft Yahei" et d'autres noms de polices.

Ensuite, nous devons définir la police utilisée dans matplotlib. La police peut être définie via l'exemple de code suivant :

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

# 设置字体
font = FontProperties(fname=r"c:windowsontsSimSun.ttc", size=14)

# 绘图示例
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)

# 添加中文字符
plt.title("折线图示例", fontproperties=font)
plt.xlabel("x轴", fontproperties=font)
plt.ylabel("y轴", fontproperties=font)

plt.show()

Dans le code ci-dessus, nous définissons d'abord la police à utiliser via FontProperties, où le paramètre fname spécifie le chemin d'accès à la police. Il convient de noter que le chemin dans le code ci-dessus concerne les paramètres du système Windows. Si vous utilisez d'autres systèmes d'exploitation, veuillez modifier le chemin de la police en conséquence. Nous utilisons ensuite le paramètre fontproperties pour spécifier la police à utiliser dans les étiquettes du titre et des axes. FontProperties来设置要使用的字体,其中fname参数指定了字体的路径。需要注意的是,上述代码中的路径是针对Windows系统的设置,如果你使用的是其他操作系统,请相应修改字体路径。然后,我们使用fontproperties参数在标题和轴标签中指定要使用的字体。

运行上述代码,就能够绘制出中文字符显示正常的折线图。

另外,如果你想在整个运行过程中都使用相同的字体设置,可以在matplotlib的配置文件中进行全局设置。首先,需要找到matplotlib的配置文件,可以通过下面的代码查看其所在路径:

import matplotlib as mpl
print(mpl.matplotlib_fname())

然后,编辑该配置文件(一般是matplotlibrc

Exécutez le code ci-dessus pour dessiner un graphique linéaire avec un affichage normal des caractères chinois.

De plus, si vous souhaitez utiliser les mêmes paramètres de police tout au long de l'exécution, vous pouvez les définir globalement dans le fichier de configuration de matplotlib. Tout d'abord, vous devez trouver le fichier de configuration matplotlib. Vous pouvez vérifier son chemin via le code suivant :

#font.family         : sans-serif

Ensuite, éditez le fichier de configuration (généralement matplotlibrc) et trouvez la ligne suivante :

font.family         : SimSun, Arial, sans-serif

Remplacez-le par :

rrreee🎜Enregistrez le fichier de configuration, redémarrez l'environnement Python et tous les graphiques dessinés à l'aide de matplotlib utiliseront la police spécifiée. 🎜🎜Conclusion : 🎜Grâce à la méthode ci-dessus, nous pouvons facilement résoudre le problème des caractères chinois tronqués dans matplotlib. Lors du dessin de graphiques, il nous suffit de définir les polices appropriées pour garantir l'affichage normal des caractères chinois. Cela facilite notre travail d’analyse et de visualisation des données. J'espère que le contenu ci-dessus pourra aider tout le monde, merci d'avoir lu ! 🎜

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!

Déclaration:
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