Pracuję na mapie termicznej dla niektórych danych śledzenia oka. Wymyśliłem, jak zrobić mapę cieplną i jest to bardzo atrakcyjne. Jest to kod:Mapa termiczna reprezentująca liczbę utrwalaczy
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())
Z tym kodem, mogę uzyskać ten obraz:
Jednak nie rozumiem pewnych rzeczy. Pomyślałem, że ten kod da mi wykres liczby fiksacji w określonym obszarze (im więcej utrwalenia tym bardziej czerwony obszar). Jednak patrząc na legendę nie jestem pewien, co pokazuje ten wykres. Jak mogę uzyskać wykres pokazujący liczbę fiksacji? Chciałbym również, aby legenda odzwierciedlała liczbę fiksacji, więc im bardziej czerwone, tym więcej fiksacji. Dowolny pomysł??
Edytuję, aby dodać dodatkowe informacje, które mogą być przydatne. W mojej oryginalnej ramce danych mam również zmienną o nazwie fixation_index. Myślę, że muszę umieścić tę zmienną gdzieś, ale nie jestem tego pewien.
Dzięki!
Gęstość sumuje się do jednego, tj. Legenda odnosi się do części utrwaleń zamiast do liczby. – Axeman
Dzięki za komentarz. Masz pomysł, jak to zmienić? – unomas83
Być może zamiast tego 'fill = ..level..' możesz użyć' fill = ..level .. * [całkowita liczba fiksacji] ' – Axeman