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.

  • Pandas boxplot, groupby unterschiedliches ylim in jedem subplot
  • Abstand zwischen einigen Subplots aber nicht allen
  • Matplotlib diskrete Farbleiste
  • Wie kann man die Sichtbarkeit von matplotlib-Figuren umschalten?
  • Wie man manuell eine Farbkarte in python / matplotlib ändert
  • Dreiecke im Matplotlib-Triplot mit einzelnen Farben füllen
  • Wie man die Markerrandbreite und die Lukenbreite ändert?
  • Plot GDAL Raster mit Matplotlib Basemap
  • Matplotlib: Format Achs-Offset-Werte auf ganze Zahlen oder bestimmte Nummer
  • Subplots mit Daten auf der x-Achse
  • Mehrere Side-by-Side-Histogramme mit Matplotlib?
  • Python ist die beste Programmiersprache der Welt.