suse linux und matplotlib

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
The Spirit
User
Beiträge: 274
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Freitag 8. Juni 2012, 14:58

Hi.
Ich nutze als gui unter suse linux wxpython.
Mein script läuft bis zur gui auch einwandfrei.
Starte ich dann aber eine plot unter matplotlib bekomme ich nur den error "segmentation fault" und das script läuft aber einwandfrei durch.
Aber der plot wird nicht angezeigt.
Tippe ich jedoch die relevanten zeilen code per hand in eine shell, dann läuft es einwandfrei.
Der relevante codeteil ist:

Code: Alles auswählen

		
import os
import wx
import matplotlib.pyplot as plt
import numpy as np
                
#test für suse linux
det_matrix = [[1,2,3,4],[2,8,19,100],[6,100,65,13],[3,9,12,5]]
                
np_array_matrix = np.array(det_matrix)

fig = plt.figure()
plt.pcolormesh(np_array_matrix)
plt.axis([0, 128, 0, 960])
plt.colorbar() 
plt.show()
unter windows läuft der code sowohl in der kommandozeile als auch fertig geladen als script als auch mit gui.
hat jemand ne idee woran das liegen könnte?
thx
BlackJack

Freitag 8. Juni 2012, 15:06

@The Spirit: Da streiten sich zwei verschiedene GUI-Programme im gleichen Prozess um die Systemressourcen. Wenn das unter irgend einem System funktioniert, ist das wohl eher Glück als alles andere.
The Spirit
User
Beiträge: 274
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Freitag 8. Juni 2012, 15:10

kannst du mir das etwas genauer erklären?
heisst das somit das mein wx fenster sich mit dem fenster von der plt funktion von matplot streitet?
hatte eigentlich auch für matplotlib unter suse die wx version genommen.
schonmal danke für deine hilfe.
BlackJack

Freitag 8. Juni 2012, 16:04

Du musst `matplotlib` geeignet in das verwendete GUI-Toolkit einbinden. Für wxWidgets gibt es ein Backend (http://matplotlib.sourceforge.net/api/b ... g_api.html). Schau Dir einfach mal die Beispiele auf der Webseite an: http://matplotlib.sourceforge.net/examp ... index.html
Antworten