Kontext:
Die Zeitschrift ich mein Papier einreichen möchten nur .tiff
akzeptiert (nicht mit LaTeX arbeiten), .jpg
(nicht geeignet für Graphen) und .eps
(die doesn Ich arbeite nicht mit Alpha-Transparenz, außer wenn ich das Bild rastere, was zu riesigen Dateigrößen führt. Viele meiner Plots verwenden Seaborns regplot
, die transparente Konfidenzintervalle auftragen. Ist es möglich, nicht-transparente CIs zu zeichnen, ohne alle meine Graphen manuell komplett neu zu erstellen (z. B. als gestrichelte Linien oder als Vollton im Hintergrund)?Undurchsichtige Konfidenzintervall in Seaborn
Beispiel:
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style("ticks")
np.random.seed(0)
n = 50
fig, ax = plt.subplots(figsize=(8,6))
x = np.random.randn(n)
y1 = np.random.randn(n)
y2 = np.random.randn(n)
sns.regplot(x, y1, ax=ax)
sns.regplot(x, y2, ax=ax)
plt.show()
Was die einfachste/beste Weg wäre dies als Eps-Datei zu speichern, ohne Informationen aus dem überlappenden Konfidenzintervall zu verlieren?
Niemals jpg für Plots verwenden !!! – mwaskom
Oh, ich wusste nicht, dass Sie nur Teile des Bildes rastern können. Das ist ziemlich nett. Vielen Dank! Das Journal ist ziemlich streng in Bezug auf die Dateigröße, weshalb ich hauptsächlich nicht komprimierte JPGs verwenden wollte. Für die erste Eingabe habe ich einen Workaround verwendet, bei dem der "fill_between" -Teil im Seabor-Quellcode durch gestrichelte Linien ersetzt wurde, aber Ihre Lösung sieht viel eleganter aus. –
PS warum vergleichen Sie die Zeichenfolge repr des Typs anstatt 'isinstance' zu verwenden? Ich denke auch, dass Matplotlib-Achsen eine Funktion haben, die alle Künstler eines bestimmten Typs zurückgibt, aber ich vergesse, wie es heißt. – mwaskom