2016-04-09 24 views
3

In Matplotlib, wie kann ich die Schriftgröße eines Latex-Symbols ändern?Wie stelle ich die Schriftgröße der Achsenbeschriftung mit dem LaTex-Symbol auf Matplotlib/Seaborn ein?

Ich habe den folgenden Code:

import matplotlib.pyplot as plt 
import seaborn as sns 

# get x and y from file 

plt.plot(x, y, linestyle='--', marker='o', color='b') 
plt.xlabel(r'$\alpha$ (distance weighted)', fontsize='large') 
plt.ylabel('AUC') 
plt.show() 

Aber ich habe folgendes Diagramm:

enter image description here

Beachten Sie, dass die $ \ alpha $ noch klein ist.

+0

Ich glaube nicht, können Sie einfach die Buchstaben Alpha erhöhen: Sie können das ganze Etikett erhöhen, aber das ist nicht das, was Sie wollen. Erwägen Sie das Entfernen von Alpha aus dem Titel und das Hinzufügen in einem separaten Textfeld mit der Größe, die Sie mögen: plt.text(0.5,-0.1,r'$\alpha$', fontsize=40) selyunin

+0

Ich habe nie verstanden, warum die Latex-Schriftarten kleiner als die normalen Schriftarten in Matplotlib sind, aber Sie könnten das gesamte Etikett in Latex schreiben, z.B 'r '$ \ alpha \/\ mathsf {(Abstand \/gewichtet)} $''. – mwaskom

Antwort

3

Um die Schriftgröße zu erhöhen, setzen Sie den gewünschten Wert auf Schriftgröße. Eine Möglichkeit, den Unterschied zwischen der "normalen" Schriftart und der "Latex" -Form zu mildern, ist die Verwendung von \ mathrm. Das folgende Beispiel zeigt das Verhalten, dies zu tun:

import matplotlib.pyplot as plt 
import seaborn as sns 

x = np.arange(10) 
y = np.random.rand(10) 

fig = plt.figure(1, figsize=(10,10)) 

for i, j in zip(np.arange(4), [10,15,20,30]): 
    ax = fig.add_subplot(2,2,i+1) 
    ax.plot(x, y, linestyle='--', marker='o', color='b') 
    ax.set_xlabel(r'$\mathrm{\alpha \ (distance \ weighted)}$', fontsize=j) 
    ax.set_ylabel('AUC') 
plt.show() 

enter image description here

Verwandte Themen