Так что этого я просто не могу понять. У меня есть функция, которая создает тепловую карту.R не завершает вызов функции изнутри для цикла
createHeatMap <- function(mapData){
ggmap(mapImageData1, extent = 'device') +
geom_density2d(data = mapData, aes(x = Longitude, y = Latitude), size = 0.3) +
stat_density2d(data = mapData, aes(x = Longitude, y = Latitude, fill = ..level.., alpha = ..level..), size = 0.01, bins = 16, geom = "polygon") +
scale_fill_gradient(low = "green", high = "red") +
scale_alpha(range = c(0, 0.3), guide = FALSE);
};
Это работает, когда я передаю ему кадр данных. Однако, когда я пытаюсь выполнить итерацию через цикл for и сделать несколько карт, ничего не происходит.
Users <- unique(baitStations$User);
for (user in Users){
userData <- subset(baitStations, baitStations$User == user);
createHeatMap(userData);
};
Но когда я звоню вне цикла for, он работает.
for (user in Users){
userData <- subset(baitStations, baitStations$User == user);
createHeatMap(userData);
};
**createHeatMap(userData);**
Я не могу на всю жизнь выяснить, что блокирует это от бега? Если I head(userData)
из цикла for, он печатает строки данных. Таким образом, он получает dataframe.
Возможно, не 'print'-ing. (FAQ по функциям сетки.) –
Ленивая загрузка может быть на работе. Попробуйте инкапсулировать печать в print(). 'print (plot_here)' и посмотреть, работает ли он, хотя это кажется самой странной вещью в мире. –
Положите это на ответы чувака, и я отмечу это как ответ. – Danrex