Säg att jag har följande fyrdimensionella data, där de första tre kan betraktas som koordinater, och den sista kan betraktas som värden.
c1, c2, c3, value 1, 2, 6, 0.456 34, 34, 12 0.27 12, 1, 66 0.95
Hur visualiseras effekten av de första tre koordinaterna bättre på det sista värdet?
Jag är medveten om tre metoder.
Den ena är 3D-plot för de första tre koordinaterna med storleken på punkter som det fyra värdet. Men det är inte så lätt att se trenden i data.
En annan använder en serie 3D-plot, som var och en har en koordinat fast.
En annan kan vara en så kallad ”trellisgrafer” i gitter av R. Inte sur eif det är för detta ändamål men det verkar så.
Kommentarer
- Behöver du en statisk skärm (t.ex. för ett papper)?
Svar
Om de tre första bara är rumsliga koordinater och data är glesa kan du helt enkelt göra en 3D-spridningsdiagram med olika storlekar eller färgade punkter för värdet.
Ser ungefär ut som detta:
(källa: gatech.edu )
Om dina data är avsedda att vara kontinuerliga i naturen och finns på ett gallergaller kan du plotta flera isokonturer av data med Marching Cubes .
Ett annat tillvägagångssätt när du har täta 4D-data är att visa flera 2D " skivor " av de data som är inbäddade i 3D. Det ser ut ungefär så här:
Kommentarer
- Den färgade 3D-spridningsplanen är bara riktigt lämplig för kontinuerliga funktioner på 3D-data. Om funktionens gradient ändras smidigt kan du se något mönster över punktfördelningen. På samma sätt fungerar volymvisualiseringen längst ner bäst i det här scenariot. Om funktionen är mycket bullrig kommer du att ha svårt att se någonting. Om du har fyra förklarande variabler (som för att göra PCA eller kluster) plottar 3 i euklidiska koordinater och den fjärde med hjälp av någon icke-linjär mappning för att färga för att införa någon perceptuell förspänning, som kan kvantifierad.
- @DianneCook att ' är sant. Jag antar att ' är vad jag får för att jag alltid arbetar med jämna, kontinuerliga 3D-volymdata;)
- Hej, det ' s vad quesiton frågade% ^)
Svar
Har du fyra kvantitativa variabler? Om så är fallet, prova turer, parallella koordinatdiagram, spridningsmatriser. Tourr-paketet (och tourrGui) i R kör turer, i grund och botten rotation i höga dimensioner, du kan välja att projicera i 1D, 2D eller mer, och det finns ett JSS-papper som du kan läsa för att komma igång i paketet. Parallella koordinatdiagram och scatterplot-matriser finns i GGally-paketet, även scatterplot-matriser finns i YaleToolkit-paketet. Du kan också titta på http://www.ggobi.org för videor och mer dokumentation om alla dessa.
Om dina uppgifter är helt kategoriska bör du använda mosaikdiagram eller varianter. Titta på produktplottpaketet i R, även vcd har några rimliga funktioner, eller paketet ggparallel för att göra motsvarande parallella koordinatdiagram för kategoriska data. Jag hittade också att extracat-paketet har vissa funktioner för att visa kategoriska data.
Jag läste frågan fel, ursprungligen, eftersom jag stannade vid frågan och försummade att läsa hela beskrivningen. På samma sätt som tillvägagångssättet nedan (färgpunkter i 3D) kan du använda länkad borstning för att utforska funktioner som definierats i högdimensionella utrymmen. Ta en titt på videon här som visar hur du gör detta för en 3D-multivariat normal funktion. Borsten målar punkter med hög densitet (höga funktionsvärden) och flyttar sedan till lägre och lägre densitetsvärden (låga funktionsvärden). Platserna där funktionen samplas visas i en 3D-roterande spridningsdiagram med hjälp av turnén, som också kan användas för att titta på 4, 5 eller högre dimensionella domäner.
Svar
Försök Chernoff-ansikten . Tanken är att fästa variablerna i ansiktsdrag. Till exempel storleken på leendet skulle vara en variabel, ansiktsrundheten är en annan osv. Så löjligt som det låter kan det faktiskt fungera om du hittar ett smart sätt att kartlägga variabler till funktioner.
En annan sättet är att visa 2-d projiceringar av 3-d fasdiagrammet. Anta att du har x1, x2, x3, x4 dina variabler.För varje värde på x4, rita 3-d-diagram över (x1, x2, x3) punkter och anslut punkterna. Detta fungerar bäst när x4 beställs, t.ex. det är datum eller tid.
UPPDATERING: Du kan också prova bubbla tomter. Tre dimensioner skulle vanligt kartesiska x, y, z och den 4: e dimensionen skulle vara storleken på bubbelpunkten.
Du kan prova animering, dvs använda tid som fjärde dimension.
Även en kombination av bubbla och animering: x, y, bubbla och tid.
Även relaterad till Chernoff är glyfplottning , vilket kan se lite mer seriöst ut. Det är stjärnor med strålningslängder som är proportionella mot variabla värden.
Kommentarer
- Tack för svaret. Det verkar som om det andra alternativet är möjligt för mitt problem. Jag tror att den första inte verkar vara så allvarlig för ett forskningsarbete. I grund och botten skulle jag vilja att handlingen kan avslöja någon trend eller påverkan av tre faktorer på värdet (fjärde dimensionen).
- Chernoff-ansikten användes i seriös forskning, afaik.
- Chernoff-ansikten kan vara utomordentligt användbar, särskilt när dimensionaliteten är cirka 10-20 variabler. För fyra dimensioner är de ' t lika effektiva som andra typer av grafiska framställningar.
- chernoff-ansikten är en fruktansvärd idé! om du måste använda en ikonplott, använd en stjärnplott. Om du har en riktigt liten datamängd kan det vara användbart, men försök att plotta 1000 ikoner och se om du verkligen kan se något!