Frage

Also, es scheint man folgende nicht tun kann (es einen Fehler auslöst, da axes keine set_linewidth Methode hat):

axes_style = {'linewidth':5}
axes_rect = [0.1, 0.1, 0.9, 0.9]

axes(axes_rect, **axes_style)

und hat folgenden alten Trick zu verwenden, anstatt:

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

... # some code

rcdefaults() # restore [global] defaults

Gibt es eine einfache / saubere Art und Weise (kann man x- und y- Achsen Parameter individuell einstellen kann, usw.)?

P. S. Wenn nein, warum?

War es hilfreich?

Lösung

Die obige Antwort nicht funktioniert, wie es in den Kommentaren erklärt. Ich schlage vor, zu verwenden Stacheln.

import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111)

# you can change each line separately, like:
#ax.spines['right'].set_linewidth(0.5)
# to change all, just write:

for axis in ['top','bottom','left','right']:
  ax.spines[axis].set_linewidth(0.5)

plt.show()
# see more about spines at:
#http://matplotlib.org/api/spines_api.html
#http://matplotlib.org/examples/pylab_examples/multiple_yaxis_with_spines.html

Andere Tipps

plt.setp(ax.spines.values(), linewidth=5)

Ja, es ist eine einfache und saubere Art und Weise, dies zu tun.

Der Aufruf ' axhline ' und ' axvline ' von einer Achse Beispiel erscheint die Technik in der MPL-Dokumentation unterstützt werden.

In jedem Fall ist es einfach, und gibt Ihnen feinkörnige Kontrolle über das Aussehen der Achsen.

So zum Beispiel, wird dieser Code ein Diagramm erstellen und die Farbe x-Achse grün und erhöht die Linienbreite der x-Achse von einem Standardwert von „1“ auf einen Wert von „4“; die y-Achse ist rot gefärbt und die Linienbreite der y-Achse wird von „1“ bis „8“ erhöht.

from matplotlib import pyplot as PLT
fig = PLT.figure()
ax1 = fig.add_subplot(111)

ax1.axhline(linewidth=4, color="g")        # inc. width of x-axis and color it green
ax1.axvline(linewidth=4, color="r")        # inc. width of y-axis and color it red

PLT.show()

Die axhline / axvline Funktion akzeptiert zusätzliche Argumente, die sollten Sie eine ziemlich alles tun, damit, was Sie wollen, ästhetisch, insbesondere eine der ~ matplotlib.lines.Line2D Eigenschaften gelten kwargs (zB ‚Alpha‘, ‚Linienstil‘ , capstyle, joinstyle).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top