У меня есть этот набор данных: https://www.dropbox.com/s/k06n9l05t25r6x2/newdata.csv?dl=0Как преобразовать данные точек, собранные с интервалом сетки, в набор данных с привязкой в r?
(Sample)
"","row","col","flagrv"
"1",2361,530,2
"2",2378,531,2
"3",2360,531,2
"4",2355,531,2
"5",2363,532,2
"6",2359,532,2
"7",2368,533,2
"8",2367,533,2
"10",2359,533,2
А если я сюжет, используя этот код:
gs.pal <- colorRampPalette(c("blue", "green","yellow","orange","red"),bias=1,space="rgb")
ggplot(data=ndata,aes(x=col,y=row,color=flagrv)) +
geom_point(size = 0.01)+
scale_colour_gradientn(name = "Scale",colours = gs.pal(5))+
xlab('Longitude')+
ylab('Latitude')+
theme_bw()+
theme(line = element_blank())+
theme(legend.position = c(.93,.20),panel.grid.major = element_line(colour = "#854440"))+
ggsave("test.png",width=10, height=8,dpi=300)
Получим эту цифру:
Теперь, проблема в том, что у меня нет значений Lat-Long. Я хочу наложить границы штата, но не могу использовать пакет Maps. Кто-то предложил использовать gdal, но я не знаю, как это сделать. Не могли бы вы рассказать мне, как я могу сопоставить это в домен Lat-Long, чтобы я мог легко манипулировать им.
Edit:
я узнал от кого-то еще, что я могу использовать это:
gdal_translate -a_srs EPSG:4269 FILE.asc FILE.tif
#
Ошибки для ответов 1
Error: unexpected ']' in "spdf = SpatialPointsDataFrame(coords, all_data[, c("flagrv"]"
Затем я изменил код:
spdf = SpatialPointsDataFrame(coords, all_data[, c("flagrv")])
Но теперь у меня есть эта ошибка:
Error in validObject(.Object) : invalid class “SpatialPointsDataFrame” object: invalid object for slot "data" in class "SpatialPointsDataFrame": got class "integer", should be or extend class "data.frame"
Я получил эту информацию: Если это имеет смысл - gdal_translate -a_srs EPSG: 4269 FILE.asc FILE.tif – maximusdooku
Это хорошо: это означает, что, основываясь на http://spatialreference.org, изображение имеет проекция NAD83 lat/lon. Проблема в том, что ваши X и Y, очевидно, не lat/lon.Я не вижу ясного способа сделать это, не переводя столбцы строк и столбцов в ваш файл csv в эквивалентные значения lat lon. Если вы это сделаете, вы можете превратить ваши данные в пространственный фрейм данных: проверьте точки и координаты в http://www.maths.lancs.ac.uk/~rowlings/Teaching/UseR2012/cheatsheet.html –
Я конвертирую X/Ys в эквивалентные Lat-Longs? Не могли бы вы помочь с некоторым кодом. Я читаю эту ссылку. Если я смогу это сделать, я смогу сделать остальную часть материала, например, оверлейные границы состояний. – maximusdooku