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:windowsontsSimSun.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
#font.family : sans-serif
matplotlibrc
) et trouvez la ligne suivante : font.family : SimSun, Arial, sans-serif
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!