Seite 1 von 1

Problem mit matplotlib und SVG

Verfasst: Donnerstag 22. September 2011, 15:47
von frixhax
Hallo zusammen!
Ich benutze matplotlib aus pylab (import pylab as plt) um zwei Listen gegeneinander zu plotten. Dazu verwende ich

Code: Alles auswählen

plt.errorbar(liste1, liste2, yerr=errorliste, fmt='k-')
und speichere das ganze über

Code: Alles auswählen

plt.savefig('datei.svg')
als File.
Leider werden dabei Teile der Kurve nicht geplotten sondern fehlen einfach wie abgeschnitten - die Bereiche des Diagramms sind einfach weiß. Das tritt innerhalb der Achsen am rechten und unteren Rand des Plots auf, links und oben geht die Kurve bis an die Achsen. Und es passiert ausschließlich, wenn ich als SVG speichere. Wähle ich PS, EPS, PDF oder PNG sehen die Plots aus wie sie sollen, leider würde ich aber gerne SVG nutzen.
Kennt jemand das Problem und hat eine Lösung?
Viele Grüße

Re: Problem mit matplotlib und SVG

Verfasst: Donnerstag 22. September 2011, 17:14
von gkuhl
Hi,

ich kann das bei mir leider nicht nachvollziehen. Kannst du mal ein lauffähiges Beispiel geben, wo der Fehler auftritt? Ansonsten wären noch OS und Versionen von Python und Matplotlib interessant.

Eventuell stimmt das Backend nicht. Tritt das Problem noch auf, wenn du folgende zwei Zeilen ganz an den Anfang packst:

Code: Alles auswählen

import matplotlib
matplotlib.use('Agg')
Grüße
Gerrit

Re: Problem mit matplotlib und SVG

Verfasst: Donnerstag 29. September 2011, 14:41
von frixhax
Hi!
Ja, das Problem tritt auch dann noch auf. Python ist Version 2.5.2, matplotlib 0.91.4

Der Minimalcode waere z.B.

Code: Alles auswählen

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt

x = [1,2,3,4,5,6,7,8]
y = [4,3,2,1,2,3,4,5]
plt.clf()
plt.figure(1)
plt.plot(x, y, 'r-')
plt.savefig('plottest.svg', bbox_inches='tight', pad_inches=0)
Da fehlt bei mir der untere und der rechte Datenpunkt im Plot (nur bei svg!). Ob ich bbox_inches und pad_inches weglasse, macht keinen Unterschied.

Viele Gruesse

Re: Problem mit matplotlib und SVG

Verfasst: Donnerstag 29. September 2011, 15:05
von BlackJack
Kann ich mit `matplotlib` Version 0.99.1.1 nicht nachvollziehen. SVG in Inkscape und Chromium angeschaut.

Re: Problem mit matplotlib und SVG

Verfasst: Donnerstag 29. September 2011, 15:16
von frixhax
Ich Trottel -.- Danke! Ich hatte zuviel Vertrauen in eog, den Gnome image viewer ;) Unter Windows klappt's ohne Probleme, ich werd also einen anderen Viewer für Linux suchen.