Heim  >  Artikel  >  Backend-Entwicklung  >  Teilen Sie Tipps und Erfahrungen zum Umgang mit verstümmelten chinesischen Schriftzeichen in Matplotlib

Teilen Sie Tipps und Erfahrungen zum Umgang mit verstümmelten chinesischen Schriftzeichen in Matplotlib

王林
王林Original
2024-01-13 14:14:131351Durchsuche

Teilen Sie Tipps und Erfahrungen zum Umgang mit verstümmelten chinesischen Schriftzeichen in Matplotlib

Austausch von Tipps und Erfahrungen bei der Lösung verstümmelter chinesischer Matplotlib-Zeichen

[Einführung]
Wenn wir Matplotlib zum Zeichnen von Grafiken verwenden, werden wir unweigerlich auf das Problem verstümmelter chinesischer Zeichen stoßen. Dieses Problem tritt normalerweise bei Legenden, Achsenbeschriftungen usw. auf. Um dieses Problem zu lösen, werden in diesem Artikel einige praktische Tipps und Erfahrungen weitergegeben, die den Lesern helfen sollen, das Problem der verstümmelten chinesischen Zeichen in Matplotlib einfach zu lösen.

[Problembeschreibung]
Bei der Verwendung von Matplotlib zum Zeichnen von Grafiken verwenden wir standardmäßig den englischen Zeichensatz. Da beim Hinzufügen von chinesischem Text die Standardzeichenkodierung von Matplotlib der ASCII-Zeichensatz ist, können chinesische Zeichen nicht korrekt angezeigt werden und werden als verstümmelte Zeichen angezeigt. Um dieses Problem zu lösen, müssen wir entsprechende Anpassungen für verschiedene Betriebssysteme und Programmumgebungen vornehmen.

【Lösung】
1. Ändern Sie die Standardschriftart des Systems
Damit Matplotlib chinesische Zeichen korrekt anzeigen kann, können wir die Standardschriftart des Systems ändern. Am Beispiel des Windows-Betriebssystems können wir es mit den folgenden Schritten einrichten:

  1. Öffnen Sie die Schriftartenkonfigurationsdatei von matplotlib. Sie können den folgenden Code verwenden, um den Dateipfad zu finden:

matplotlib importieren
matplotlib. matplotlib_fname()

  1. Finden Sie den Dateipfad. Ändern Sie die Einstellungen der beiden Parameter unter dem Pfad zu: matplotlibrc文件,打开并找到font.familyfont.sans-serif
font.family: Microsoft Yahei, SimHei, Arial

font.sans-serif: Microsoft Yahei, SimHei, Arial

    Speichern Sie die Änderungen und führen Sie das Programm erneut aus. Chinesische Schriftzeichen werden korrekt angezeigt.
2. Schriftart manuell festlegen

Zusätzlich zum Ändern der Standardschriftart des Systems können wir die Schriftart auch manuell im Programm festlegen. Dies können wir mit dem folgenden Codeausschnitt erreichen:

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']

Auf diese Weise setzen wir die Schriftart auf „ „Microsoft YaHei“, dies ist eine häufig verwendete chinesische Schriftart, die durch Hinzufügen anderer chinesischer Schriftarten in eckigen Klammern ersetzt werden kann.

3. Unicode-Kodierung verwenden

In einigen Sonderfällen können wir die Standardschriftart des Systems möglicherweise nicht ändern oder die Schriftart manuell festlegen. Derzeit können wir die Unicode-Codierung verwenden, um chinesische Schriftzeichen anzuzeigen. Beispiel:

plt.xlabel(u'horizontal axis name')

Fügen Sie das Präfix „u“ vor der Zeichenfolge hinzu, um anzugeben, dass die Zeichenfolge Unicode-Codierung verwendet, damit matplotlib chinesische Zeichen korrekt anzeigen kann.

4. Fontproperties-Parameter verwenden

In einigen Fällen müssen wir möglicherweise chinesische Schriftzeichen in Legenden oder an anderen Stellen verwenden. Zu diesem Zeitpunkt können wir den Parameter „fontproperties“ verwenden, um die entsprechende chinesische Schriftart anzugeben und die Schriftart festzulegen. Zum Beispiel:

matplotlib.font_manager als fm importieren

font = fm.FontProperties(fname='Microsoft YaHei.ttf')

plt.xlabel('horizontal axis name', fontproperties=font)

Auf diese Weise haben wir kann chinesische Zeichen anzeigen, indem Schriftarten angegeben werden.

【Codebeispiel】

Das folgende Codebeispiel zeigt, wie chinesische Zeichen korrekt angezeigt werden:

import matplotlib.pyplot as plt

import matplotlib.font_manager as fm

Legen Sie die Schriftart fest

font = fm.FontProperties(fname=' Microsoft YaHei.ttf')

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']

Grafiken zeichnen

x = [1, 2, 3, 4]

y = [5, 6 , 7, 8]
plt.plot(x, y)

Die Koordinatenachsenbeschriftungen und Legendeneinstellungen werden auf Chinesisch angezeigt

plt.xlabel('horizontal axis name', fontproperties=font)

plt.ylabel('vertical Achsenname', Fontproperties=Font)
plt.legend(['curve'], prop=Font)

Grafiken anzeigen

plt.show()

[Zusammenfassung]

Um das Problem der verstümmelten chinesischen Matplotlib-Zeichen zu lösen, Wir können je nach Bedarf die richtige Methode auswählen. Durch Ändern der Standardschriftart des Systems, manuelles Festlegen der Schriftart, Verwendung der Unicode-Codierung oder Verwendung des Parameters „fontproperties“ können wir problemlos die korrekte Anzeige chinesischer Schriftzeichen erreichen. Ich hoffe, dass die Fähigkeiten und Erfahrungen in diesem Artikel den Lesern helfen können, das Problem der verstümmelten chinesischen Zeichen in Matplotlib zu lösen und den Zeicheneffekt zu verbessern.

Das obige ist der detaillierte Inhalt vonTeilen Sie Tipps und Erfahrungen zum Umgang mit verstümmelten chinesischen Schriftzeichen in Matplotlib. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn