2015-10-12 7 views
5

Ich arbeite in einer Heatmap für einige Eye Tracking-Daten. Ich habe herausgefunden, wie man die Heat Map macht und es ist sehr überzeugend. Dies ist der Code:Heatmap für die Anzahl der Fixierungen

ggplot(eyematrixCorrectMatchControl, aes(x = CURRENT_FIX_X, y =CURRENT_FIX_Y)) + 
annotation_raster(image, -Inf, Inf, -Inf, Inf, interpolate = TRUE) + 
stat_density2d(data= eyematrixCorrectMatchControl, aes(x = CURRENT_FIX_X, y =CURRENT_FIX_Y, fill = ..level.., alpha = ..level..), size= 10, bins= 50, geom='polygon') + 
theme_bw() +scale_fill_gradient(low = "blue", high = "red") + 
scale_alpha_continuous(range=c(0.01,0.25) , guide = FALSE) + 
coord_cartesian(xlim= c(0,1024), ylim= c(0,768))+ 
scale_y_reverse() + 
theme(axis.line=element_blank(), 
     axis.text.x=element_blank(), 
     axis.text.y=element_blank(), 
     axis.ticks=element_blank(), 
     axis.title.x=element_blank(), 
     axis.title.y=element_blank()) 

Mit diesem Code, erhalte ich dieses Bild: enter image description here

aber ich weiß nicht, einige Dinge verstehen. Ich dachte, dass dieser Code mir die Anzahl der Fixierungen in einem bestimmten Bereich grafisch darstellen würde (je mehr Fixierung, desto röter ist die Fläche). Betrachtet man jedoch die Legende, bin ich mir nicht sicher, was diese Grafik zeigt. Wie kann ich eine Grafik erhalten, die die Anzahl der Fixierungen anzeigt? Ich würde auch gerne, dass die Legende die Anzahl der Fixierungen widerspiegelt, also je röter desto mehr Fixierungen. Irgendeine Idee??

Ich bearbeite, um einige zusätzliche Informationen hinzuzufügen, die nützlich sein könnten. In meinem ursprünglichen Datenrahmen habe ich auch eine Variable namens fixation_index. Ich denke, dass ich diese Variable irgendwo einfügen muss, aber nicht wirklich sicher.

Danke!

+1

Die Dichte addiert sich zu Eins, d. H. Die Legende bezieht sich auf den Anteil der Fixierungen anstelle der Anzahl. – Axeman

+0

Danke für Ihren Kommentar. Irgendeine Idee darüber, wie man das ändert? – unomas83

+0

Vielleicht statt "fill = ..level..' Sie können' fill = ..level .. * [Gesamtzahl der Fixierungen] ' – Axeman

Antwort

0

Heatmap.2 bietet eine Histogrammoption, die Farbe mit der Dichtezählung korreliert. Es sieht wie this aus.

+0

danke für deine Antwort! Können Sie ein Beispiel für Code angeben? – unomas83

+0

@ unomas83:

heatmap.2 (deineMatrixhier, xlab = "wähle hier unten dein Label", col = brewer.pal (9, "Orangen"), trace = "none", margins = c (4, 10), main = "Titel oben", Schlüssel = TRUE)
datadan