Wie machst du eine Fehlerbar-Handlung in Matplotlib mit linestyle = Keine in rcParams?

Bei der Plotten von Fehlerbalkenplots folgt matplotlib nicht den rcParams von no linestyle. Stattdessen plotten sie alle Punkte, die mit einer Linie verbunden sind. Hier ist ein minimales Arbeitsbeispiel:

import matplotlib.pyplot as plt lines = {'linestyle': 'None'} plt.rc('lines', **lines) plt.errorbar((0, 1), (1, 0), yerr=(0.1, 0.1), marker='o') plt.savefig('test.pdf') plt.delaxes() 

Bildbeschreibung hier eingeben

Ist die einzige Lösung explizit linestyle='None' beim Aufruf von pyplot.errorbar() ?

One Solution collect form web for “Wie machst du eine Fehlerbar-Handlung in Matplotlib mit linestyle = Keine in rcParams?”

Dies ist ein "Bug" in älteren Versionen von matplotlib (und wurde für die 1.4 Serie fixiert ). Das Problem ist, dass in Axes.errorbar gibt es einen Standardwert von '-' für fmt , die dann an den Aufruf an plot wird, der verwendet wird, um die Marker und die Linie zu zeichnen. Da ein Formatstring in plot schaut man niemals den Standardwert in rcparams .

Du kannst auch in fmt = ''

 eb = plt.errorbar(x, y, yerr=.1, fmt='', color='b') 

Die dazu führen wird, dass der Wert rcParam['lines.linestlye'] eingehalten wird. Ich habe eine PR eingereicht, um dies umzusetzen.

Eine weitere Arbeit um dies ist, um die Fehlerbar in zwei Schritten zu machen:

 l0, = plt.plot(x,y, marker='o', color='b') eb = plt.errorbar(x, y, yerr=.1, fmt=None, color='b') 

Dies ist eine lästige Designentscheidung, aber das Ändern wäre ein wichtiger Api Pause. Bitte eröffnen Sie hier ein Problem.

Errorbar doc

Als Nebennote sieht es aus wie die Rufsignatur wurde zuletzt im Jahr 2007 geändert, und das war, um errorbars nicht standardmäßig blau zu machen.

  • Tkinter matplotlib-Diagramm kann nicht mit Schaltflächen und benutzerdefinierten Daten aktualisiert werden
  • Matplotlib Histogramm mit Auffangbehälter für hohe Werte
  • Matplotlib.pyplot vergisst keine vorherigen Plots - wie kann ich spülen / refresh?
  • Closing pyplot Fenster
  • Matplotlib-Graphen ohne laufenden X-Server erstellen [doppelte]
  • Gibt es eine Liste von Linienstilen in matplotlib?
  • Ändern Sie die Tickfrequenz auf X (Zeit, nicht Nummer) Frequenz in Matplotlib
  • Interaktive Pixelinformation eines Bildes in Python?
  • Pandas: Karton einer Spalte auf einer anderen Spalte
  • Schatten 'Zellen' in Polarplot mit Matplotlib
  • Erzeugen eines glatten Liniengraphen mit matplotlib
  • Python ist die beste Programmiersprache der Welt.