2015-10-12 19 views
5

Sto lavorando su una mappa di calore per alcuni dati di tracciamento oculare. Ho capito come fare la mappa termica ed è molto avvincente. Questo è il codice:Heatmap che rappresenta il numero di fissazioni

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()) 

Con questo codice, ottengo questa immagine: enter image description here

Tuttavia, non capisco alcune cose. Ho pensato che questo codice mi avrebbe dato un grafico del numero di fissazioni in un'area specifica (più la fissazione più rossa è l'area). Tuttavia, guardando la legenda non sono sicuro di ciò che mostra questo grafico. Come posso ottenere un grafico che mostra il numero di fissazioni? Mi piacerebbe anche che la legenda rifletta il numero di fissazioni, quindi più rosso è il numero di fissazioni. Qualche idea??

Modifica per aggiungere alcune informazioni aggiuntive che potrebbero essere utili. Nel mio dataframe originale ho anche una variabile chiamata fixation_index. Penso di dover includere questa variabile da qualche parte, ma non proprio sicuro.

Grazie!

+1

La densità si somma a uno, cioè la legenda si riferisce alla frazione di fissazioni anziché al numero. – Axeman

+0

Grazie per il tuo commento. Qualche idea su come cambiarlo? – unomas83

+0

Forse invece 'fill = ..level..' puoi usare' fill = ..level .. * [numero totale di fissazioni] ' – Axeman

risposta

0

Heatmap.2 offre un'opzione di istogramma che mette in correlazione il colore con il conteggio della densità. Sembra this.

+0

grazie per la tua risposta! Potresti fornire un esempio di codice? – unomas83

+0

@ unomas83:

heatmap.2 (yourmatrixhere, xlab = "scegli la tua etichetta in basso qui", col = brewer.pal (9, "Arance"), trace = "none", margini = c (4, 10), main = "Titolo in alto qui", tasto = TRUE)
datadan

Problemi correlati