Ho un grande insieme di dati che sto cercando di rappresentare in 3D nella speranza di individuare un modello. Ho passato un po 'di tempo a leggere, la ricerca e la codifica, ma poi ho capito il mio problema principale non è la programmazione, ma in realtà la scelta di un modo per visualizzare i dati.Come rappresenteresti i seguenti dati 3D in Matplotlib o Mayavi?
mplot3d di Matplotlib offre un sacco di opzioni (wireframe, contorno, contorno pieno, ecc), e così fa MayaVi. Ma ci sono così tante scelte (e ognuna con una propria curva di apprendimento) che sono praticamente perso e non so da dove cominciare! Quindi la mia domanda è essenzialmente quale metodo di tracciamento useresti se avessi a che fare con questi dati?
miei dati è la data-base. Per ogni punto nel tempo, traccio un valore (la lista 'Attuale').
Ma per ogni punto nel tempo, ho anche un limite superiore, un limite inferiore, e un punto di mid-range. Questi limiti e punti medi sono basati su un seme, in piani diversi.
voglio macchiare il punto o identificare il modello quando, o prima, un grande cambiamento avviene nella mia lettura 'Actual'. È quando i limiti superiori su tutti i piani si incontrano? O avvicinarsi l'un l'altro? È quando il valore effettivo tocca un limite superiore/medio/basso? È quando le Uppers in un piano toccano i Lowers di un altro piano?
Nel codice che sto incollando, ho ridotto il set di dati a pochi elementi. Sto solo usando semplici grafici a dispersione e linea, ma a causa delle dimensioni del set di dati (e forse dei limiti di mplot3d?), Non riesco a utilizzarlo per individuare le tendenze che sto cercando.
dates = [20110101,20110104,20110105,20110106,20110107,20110108,20110111,20110112]
zAxis0= [ 0, 0, 0, 0, 0, 0, 0, 0]
Actual= [ 1132, 1184, 1177, 950, 1066, 1098, 1116, 1211]
zAxis1= [ 1, 1, 1, 1, 1, 1, 1, 1]
Tops1 = [ 1156, 1250, 1156, 1187, 1187, 1187, 1156, 1156]
Mids1 = [ 1125, 1187, 1125, 1156, 1156, 1156, 1140, 1140]
Lows1 = [ 1093, 1125, 1093, 1125, 1125, 1125, 1125, 1125]
zAxis2= [ 2, 2, 2, 2, 2, 2, 2, 2]
Tops2 = [ 1125, 1125, 1125, 1125, 1125, 1250, 1062, 1250]
Mids2 = [ 1062, 1062, 1062, 1062, 1062, 1125, 1000, 1125]
Lows2 = [ 1000, 1000, 1000, 1000, 1000, 1000, 937, 1000]
zAxis3= [ 3, 3, 3, 3, 3, 3, 3, 3]
Tops3 = [ 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250]
Mids3 = [ 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187]
Lows3 = [ 1125, 1125, 1000, 1125, 1125, 1093, 1093, 1000]
import matplotlib.pyplot
from mpl_toolkits.mplot3d import Axes3D
fig = matplotlib.pyplot.figure()
ax = fig.add_subplot(111, projection = '3d')
#actual values
ax.scatter(dates, zAxis0, Actual, color = 'c', marker = 'o')
#Upper limits, Lower limts, and Mid-range for the FIRST plane
ax.plot(dates, zAxis1, Tops1, color = 'r')
ax.plot(dates, zAxis1, Mids1, color = 'y')
ax.plot(dates, zAxis1, Lows1, color = 'b')
#Upper limits, Lower limts, and Mid-range for the SECOND plane
ax.plot(dates, zAxis2, Tops2, color = 'r')
ax.plot(dates, zAxis2, Mids2, color = 'y')
ax.plot(dates, zAxis2, Lows2, color = 'b')
#Upper limits, Lower limts, and Mid-range for the THIRD plane
ax.plot(dates, zAxis3, Tops3, color = 'r')
ax.plot(dates, zAxis3, Mids3, color = 'y')
ax.plot(dates, zAxis3, Lows3, color = 'b')
#These two lines are just dummy data that plots transparent circles that
#occpuy the "wall" behind my actual plots, so that the last plane appears
#floating in 3D rather than being pasted to the plot's background
zAxis4= [ 4, 4, 4, 4, 4, 4, 4, 4]
ax.scatter(dates, zAxis4, Actual, color = 'w', marker = 'o', alpha=0)
matplotlib.pyplot.show()
che sto ricevendo questa trama, ma semplicemente non aiutarmi a vedere eventuali co-relazioni.
Non sono un matematico o uno scienziato, quindi quello di cui ho veramente bisogno è aiutare a scegliere il FORMATO in cui visualizzare i miei dati. C'è un modo efficace per mostrare questo in mplot3d? O useresti MayaVis? In entrambi i casi, quale libreria e classe/i useresti?
Grazie in anticipo.
Se siete alla ricerca di correlazioni, 3D non può essere il modo migliore. La prospettiva si intromette nell'interpretazione. Si consiglia di utilizzare invece i diagrammi sfaccettati, il tracciamento e i grafici a dispersione. – gauden