2009-10-28 8 views
12

Ich benutze Matplotlib 0,99.matplotlib Rahmenbreite

Ich bin nicht in der Lage, Breite der Grenze von subplot zu ändern, wie kann ich es tun?

-Code lautet wie folgt:

fig = plt.figure(figsize = (4.1, 2.2)) 
ax = fig.add_subplot(111) 

ax.patch.set_ linewidth(0.1) 
ax.get_frame().set_linewidth(0.1) 

Die letzten beiden Zeilen nicht funktionieren, aber die folgenden Werke fein:

legend.get_frame().set_ linewidth(0.1) 

Antwort

21

Sie möchten die Grenzlinie Größe anzupassen? Sie müssen ax.spines [side] .set_linewidth (size) verwenden.

So etwas wie:

[i.set_linewidth(0.1) for i in ax.spines.itervalues()] 
+0

Dank! das hilft. –

+0

Wow, das ist eine alte Frage ... funktioniert aber immer noch in Python 3, indem '.values ​​()' anstelle von .'itervalues ​​() 'verwendet wird! –

+0

@CharlesParr, lass mich nicht alt fühlen! – Mark

7

Vielleicht ist es das, was Sie suchen?

import matplotlib as mpl

mpl.rcParams['axes.linewidth'] = 0.1 #set the value globally