Étiquettes d'axes et titre Matplotlib

Nous pouvons utiliserxlabel()etylabel()la méthode pour définir les étiquettes de l'axe des x et de l'axe des y.

Exemple

import numpy as np
import matplotlib.pyplot as plt

x = np.array([1, 2, 3, 4])
y = np.array([1, 4, 9, 16])
plt.plot(x, y)

plt.xlabel("x - étiquette")
plt.ylabel("y - label")

plt.show()

Le résultat affiché est le suivant :

Title

Nous pouvons utilisertitle()la méthode pour définir le titre.

Exemple

import numpy as np
import matplotlib.pyplot as plt

x = np.array([1, 2, 3, 4])
y = np.array([1, 4, 9, 16])
plt.plot(x, y)

plt.title("TITRE D'EXEMPLE DE TEST")
plt.xlabel("x - étiquette")
plt.ylabel("y - label")

plt.show()

Le résultat affiché est le suivant :

Affichage du chinois dans les graphiques

Par défaut, Matplotlib ne prend pas en charge le chinois. Nous pouvons utiliser les méthodes simples suivantes pour résoudre ce problème.

Ici, nous utilisons Source Han Sans (Noto Sans CJK), une police open source publiée par Adobe et Google.

Site officiel :https://source.typekit.com/source-han-serif/cn/

Adresse GitHub :https://github.com/adobe-fonts/source-han-sans/tree/release/OTF/SimplifiedChinese

Après avoir ouvert le lien, il suffit d'en choisir un :

Vous pouvez également télécharger depuis le cloud drive :https://pan.baidu.com/s/10-w1JbXZSnx3Tm6uGpPGOw, code d'extraction :yxqu。

Vous pouvez télécharger une police OTF, telle que SourceHanSansSC-Bold.otf, et placer le fichier dans le même répertoire que le code en cours d'exécution :

Placez le fichier SourceHanSansSC-Bold.otf dans le répertoire du code en cours d'exécution :

Exemple

import numpy as np from matplotlib import pyplot as plt import matplotlib # fname est le chemin vers la bibliothèque de polices que vous avez téléchargée, notez le chemin de la police SourceHanSansSC-Bold.otf zhfont1 = matplotlib.font_manager.FontProperties(fname="SourceHanSansSC-Bold.otf") x = np.arange(1,11) y = 2 * x + 5 plt.title("Exemple de tutoriel - Test", fontproperties=zhfont1) # fontproperties définit l'affichage du chinois, fontsize définit la taille de police plt.xlabel("axe des x", fontproperties=zhfont1) plt.ylabel("axe des y", fontproperties=zhfont1) plt.plot(x,y) plt.show()

Le résultat après exécution est illustré dans la figure ci-dessous :

De plus, nous pouvons également utiliser les polices système :

from matplotlib import pyplot as plt
import matplotlib
a=sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])

for i in a:
    print(i)

Imprimez tous les noms enregistrés dans la ttflist de votre font_manager, trouvez une police chinoise telle que STFangsong (仿宋), Heiti TC (corps noir), puis ajoutez le code suivant :

plt.rcParams['font.family']=['STFangsong']

De plus, nous pouvons également personnaliser le style de police :

Exemple

import numpy as np
from matplotlib import pyplot as plt
import matplotlib
 
# fname est le chemin vers la bibliothèque de polices que vous avez téléchargée, notez le chemin de la police SourceHanSansSC-Bold.otf, et le paramètre size définit la taille de police
zhfont1 = matplotlib.font_manager.FontProperties(fname="SourceHanSansSC-Bold.otf", size=18)
font1 = {'color':'blue','size':20}
font2 = {'color':'darkred','size':15}
x = np.arange(1,11)
y =  2  * x +  5

# fontdict peut utiliser CSS pour définir le style de police
plt.title("Tutoriel d'exemple - Test", fontproperties=zhfont1, fontdict = font1)
 
# fontproperties définit l'affichage du chinois, fontsize définit la taille de la police
plt.xlabel("x-axis", fontproperties=zhfont1)
plt.ylabel("y-axis", fontproperties=zhfont1)
plt.plot(x,y)
plt.show()

Le résultat de sortie est le suivant :

Positionnement du titre et des étiquettes

title()La méthode fournit le paramètrelocpour définir la position d'affichage du titre. Il peut être défini sur :'left', 'right', et 'center'. La valeur par défaut est 'center'.。

xlabel()La méthode fournit le paramètrelocpour définir la position d'affichage de l'axe des x. Il peut être défini sur :'left', 'right', et 'center'. La valeur par défaut est 'center'.。

ylabel()La méthode fournit le paramètrelocpour définir la position d'affichage de l'axe des y. Il peut être défini sur :'bottom', 'top', et 'center'. La valeur par défaut est 'center'.。

Exemple

import numpy as np
from matplotlib import pyplot as plt
import matplotlib
 
# fname est le chemin vers la bibliothèque de polices que vous avez téléchargée, notez le chemin de la police SourceHanSansSC-Bold.otf, et le paramètre size définit la taille de police
zhfont1 = matplotlib.font_manager.FontProperties(fname="SourceHanSansSC-Bold.otf", size=18)
font1 = {'color':'blue','size':20}
font2 = {'color':'darkred','size':15}
x = np.arange(1,11)
y =  2  * x +  5

# fontdict peut utiliser CSS pour définir le style de police
plt.title("Tutoriel d'exemple - Test", fontproperties=zhfont1, fontdict = font1, loc="left")
 
# fontproperties définit l'affichage du chinois, fontsize définit la taille de la police
plt.xlabel("x-axis", fontproperties=zhfont1, loc="left")
plt.ylabel("y-axis", fontproperties=zhfont1, loc="top")
plt.plot(x,y)
plt.show()

Le résultat de sortie est le suivant :

Autres extensions