2012-01-20 20 views
14

Ho un programma wxPython che legge da diversi dataset, esegue vari tipi di analisi al volo semplici sui dati e traccia varie combinazioni dei set di dati su tela matplotlib. Mi piacerebbe avere l'opportunità di scaricare i dati attualmente tracciati su file per un'analisi più sofisticata in seguito.Come estrarre i dati dal grafico matplotlib

La domanda è: esistono metodi in matplotlib che consentono l'accesso ai dati attualmente tracciati in matplotlib.Figure?

risposta

19

Jakub ha ragione su come modificare lo script Python per scrivere i dati direttamente dalla fonte da cui è stato inviato nella trama; è così che preferirei farlo. Ma per riferimento, se si ha bisogno di ottenere i dati da una trama, credo che questo dovrebbe farlo

gca().get_lines()[n].get_xydata() 

In alternativa è possibile ottenere il x e dei dati Y Imposta separatamente:

line = gca().get_lines()[n] 
xd = line.get_xdata() 
yd = line.get_ydata() 
+0

Grazie, penso che dovrebbe farlo. Se si desidera conoscere i motivi per cui preferisco scaricare i dati dalla trama per creare problemi con le origini dati, vedere il mio commento su @Jacub. –

+0

Perché un oggetto 'mpl_toolkits.mplot3d.art3d.Line3D' non ha' get_zdata() '? Non riesco a estrarre i valori z. :-( –

+0

@SibbsGambling Che dovresti prendere con gli sviluppatori di matplotlib. –

1

sua Python, in modo da poter modificare lo script di origine direttamente in modo i dati vengono scaricati prima che venga tracciata

+3

so che è il modo più platonico :) Ma prima, i dati vengono inviati a tracciare da molti posti e vengono modificati mentre sulla trama; Avrei bisogno di tenere traccia di ogni modifica dei dati tracciati. E in secondo luogo - non ho bisogno di scaricare i dati * ogni volta che * viene tracciato. Vorrei prima trovare qualcosa di interessante e quindi premere un pulsante su NavigationToolbar per esportarlo in un file. NavigationToolbar è collegato a FigureCanvas, quindi i pulsanti hanno accesso diretto alle proprietà e ai metodi delle figure. Ecco perché ho chiesto come scaricare i dati dalla trama. –

+2

Funzionerebbe solo se l'utente sa in anticipo che desidera esportare i dati e che i dati sono statici. Raro direi. – Schollii

Problemi correlati