Maison  >  Article  >  développement back-end  >  python matplotlib Paramètre d'affichage chinois Analysis_python

python matplotlib Paramètre d'affichage chinois Analysis_python

韦小宝
韦小宝original
2017-12-16 11:26:351633parcourir

Cet article présente principalement l'analyse des paramètres d'affichage chinois de python matplotlib, qui a une certaine valeur de référence. Les amis intéressés par python peuvent s'y référer.

Récemment, alors que j'apprenais le célèbre package dessin matplotlib de Python, j'ai découvert que parfois les légendes et autres paramètres ne pouvaient pas afficher correctement le chinois, j'ai donc voulu résoudre ce problème.

PS : Cet article concerne uniquement Windows, les autres plateformes sont uniquement à titre de référence.

La raison

est qu'il n'y a pas de polices chinoises dans la bibliothèque matplotlib.

J'ai installé anaconda, qui est le dossier où se trouve la police matplotlib correspondante (comment trouver le dossier matplotlib fichier de configuration , la solution sera décrite ci-dessous, easyman~).

C:Anaconda64Libsite-packagesmatplotlibmpl-datafontsttf

Solution

Voyons maintenant ce que je pense être une meilleure solution :

Définir les paramètres à chaque fois que vous écrivez du code


#coding:utf-8
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
#有中文出现的情况,需要u'内容'


Une fois pour toutes (recommandé)


import matplotlib
matplotlib.matplotlib_fname() #将会获得matplotlib包所在文件夹


Entrez ensuite dans le dossier C:Anaconda64Libsite-packagesmatplotlibmpl-data et vous verrez le fichier de configuration matplotlibrc.

1) Ouvrez le fichier de configuration et trouvez la ligne suivante :


#font.serif : Bitstream Vera Serif, New Century Schoolbook, Century Schoolbook L, Utopia, ITC Bookman, Bookman, Nimbus Roman No9 L, Times New Roman, Times, Palatino, Charter, serif


Ensuite, modifiez le précédent CommentaireSupprimer !

2) Recherchez les polices chinoises et placez-les dans la bibliothèque de polices matplotlib.

Copiez la police sous le dossier Windows : C:WindowsFontsMicrosoftYaHeiUI, puis collez-la dans le dossier C:Anaconda64Libsite-packagesmatplotlibmpl-datafontsttf et renommez-la Vera.ttf.

Remarque : la fonction de cette étape est en fait de remplacer une police par défaut dans matplotlib par la police chinoise que nous avons copiée, et de changer le nom de la police chinoise par le nom de la police dans matplotlib.

En fait, il existe d'autres solutions, mais elles semblent avoir échoué dans mon cas.

Supplément

Le signe négatif de l'axe des coordonnées s'affiche normalement


#去掉了注释符号,同时,改为False
axes.unicode_minus : False


Exemple


#coding:utf-8
import matplotlib.pyplot as plt
plt.plot((1,2,3),(4,3,-1))
plt.xlabel(u'横坐标')
plt.ylabel(u'纵坐标')
plt.show()


Résumé

Ce qui précède est l'intégralité du contenu de cet article sur l'analyse des paramètres d'affichage chinois de python matplotlib. J'espère qu'il sera utile à tout le monde. Les amis intéressés peuvent continuer à consulter ce site :

Recommandations associées :

Python utilise des expressions régulières Exemple de code de la formule connecteur

Analyse de cas d'implémentation Python de la sortie de chaînes colorées

Code Python pour l'algorithme génétique

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