2010-11-29 15 views
5

Ich mache häufig Plots für meine eigene Forschung und alle Standardeinstellungen sind in Ordnung, müssen aber oft auf Plots für Vorträge/Präsentationen umstellen; Ich habe manuell alle der Schrift eine bit bigger zur besseren Ablesbarkeit Größen:Erstellen von Gruppen von Standardwerten für Matplotlib

plot(xdata, ydata) 
xlabel("x-axis data", fontsize=20) 
ax = gca() 
for labeltick in ax.xaxis.get_majorticklabels() + ax.yaxis.get_majorticklabels(): 
     labeltick.set_fontsize(15) 

und so weiter.

Dank Dokumentation und Fragen wie this one weiß ich, wie Standard Plotparameter zu steuern, wenn ich Matplotlib starte. Ich dachte an etwas wirklich schnell (mpl_defaults.py) schreiben:

import matplotlib as mpl 
def plot_for_talks(): 
    mpl.rcParams['font.size'] = 20 
    mpl.rcParams['figure.subplot.left'] = .2 
    mpl.rcParams['figure.subplot.right'] = .8 
    mpl.rcParams['figure.subplot.bottom'] = .2 
    mpl.rcParams['figure.subplot.top'] = .8 

Dann könnte mein Plotten Code enthält nur

import mpl_defaults 
plot_for_talks() 

Meine Frage: Gibt es einen geeigneteren Weg, dies zu tun? Vielleicht ist schon etwas eingebaut?

Antwort

4

Versuchen Sie folgendes:

import matplotlib as mpl  
mpl.rc('figure.subplot', left=.2, right=.8, bottom=.2, top=.8) 

Und es sollte in doc 5.1 eine "site-packages/matplotlib/mpl-data/matplotlibrc" Datei beschrieben sein.

Verwenden Sie mpl.matplotlib_fname(), um Ihren rc-Dateipfad abzurufen, und ändern Sie ihn, damit die Einstellung dauerhaft ist.

+0

Ich hatte gehofft, von einer "permanenten" Lösung wie dem Bearbeiten der Matplotlib-Datei wegzubleiben, da ich häufig zwischen "normalen" und "Präsentations" -Modi umschalte. Irgendwelche Ideen, wie man diesen häufigen Wechsel leichter macht? – physicsmichael

+2

@ vgm64: Dann ist deine Lösung gut genug. mpl.rcdefaults() stellt die standardmäßigen matplotlib-Standardeinstellungen wieder her. So können Sie alle Einstellungen in Datei wie mysettings.py schreiben. Und Sie müssen die Einstellungsaufrufe nicht in eine Funktion schreiben, sondern nur in den oberen Bereich schreiben. Wenn Sie in den Präsentationsmodus wechseln wollen: "import mysettings", wechseln Sie zurück: "mpl.rcdefaults()", "presentation" mode wieder: reload (mysettings) – Kabie

Verwandte Themen