Ошибка печати при использовании функции ppp
Я планирую расположение нефтеперерабатывающих заводов в Хьюстоне, штат Техас. Я определил область исследования с помощью следующего кода.
P4S.latlon <- CRS("+proj=longlat +datum=WGS84 ")
county.lines <-readShapePoly("tl_2017_us_county/tl_2017_us_county.shp", verbose = T, proj4string = P4S.latlon)
harris <- subset(county.lines, county.lines$GEOID == 48201)
brazoria <- subset(county.lines, county.lines$GEOID == 48039)
galveston <- subset(county.lines, county.lines$GEOID == 48167)
chambers <- subset(county.lines, county.lines$GEOID == 48071)
liberty <- subset(county.lines, county.lines$GEOID == 48291)
all.counties <- rbind(harris, brazoria, galveston, chambers, liberty)
ShapePoly <- as(all.counties, "SpatialPolygons")
study.area <- as(ShapePoly, "owin")
Построение участка исследования работает как задумано.
Для построения данных НПЗ я использовал следующий код
refinery <- data.frame(refinery)
attach(refinery)
refinery <- ppp(coords.x1, coords.x2, window = study.area)
Данные завода изначально были шейп-файлом. Я преобразовал его в фрейм данных, чтобы я мог использовать ppp().
Возникает вопрос, когда я строю план нефтеперерабатывающего завода, нет точек, только файлы форм.
plot(refinery, pch = 20, col = "firebrick1")
Я пишу этот скрипт для проекта класса и обычно использую ArcGIS для своих пространственных проектов. Я не уверен, что может быть причиной этого, поскольку я провел обширные исследования функции ppp и скопировал этот код с другим набором данных. Я хотел бы, чтобы нефтеперерабатывающие заводы были нанесены в виде точек на шейп-файлы графства.
2 ответа
Я не могу сказать наверняка, так как вы не предоставили воспроизводимый пример (нет ссылки на загрузку данных, нет загрузки используемых пакетов R и т. Д.), Но я думаю, что это просто из-за окраски: Аргумент col
контролирует цвет исследуемой области (окно). Для построения точек данного цвета используйте cols
например, cols = "firebrick1"
,
ПРИМЕЧАНИЕ: вы работаете непосредственно в lon, lat, так что ваши точки действительно находятся на сфере (эллипсоиде), и для этих координат непосредственно можно провести очень небольшой анализ в R (даже построение графика немного неверно, так как 1 градус отличается от 1 град. лат). Если вы продолжите анализ, вам действительно нужно спроецировать ваши координаты на плоское пространство (используйте, например, sf::st_transform()
или же sp::spTransform()
).
Когда вы строите объект класса ppp
, функция plot.ppp
выполнен. Файл справки для plot.ppp
объясняет, что цвета точек контролируются аргументом cols
,