Улучшение графика карты

#r #dictionary #polygon #spatial

Вопрос:

Я все еще новичок в R и пытаюсь сделать свою карту более красивой. Несмотря на всю информацию в Интернете, похоже, ничто не решает мою проблему. Когда я строю карту, я все еще вижу белые линии, и я хочу увеличить размер точки или удалить белые линии любым способом. Я попробовал cex и другие графические параметры, но, кроме размера легенды или заголовка, ничего не изменилось. Поскольку я только начинаю строить пространственные графики, дальнейшие предложения по улучшению с радостью принимаются! Спасибо

смотрите первый результат карты

Руководитель отдела данных

  par(mfrow=c(1,1), cex.lab=1.5,cex.axis=1.3, cex.main=1.5, mar=c(0,1.5,1.2,1.5))

 int <- classIntervals(Large spatial polygon dataframe@data$X, n=15,   style="quantile",precision=2)
 colours              <- findColours(int, palette, cutlabels=FALSE)

 plot("Large spatial polygon dataframe", col=colours, border=rgb(0,0,0,0.05), las=1, lwd=0.25 ,lty=2,main="X", adj=0)

 legend("bottomleft", legend=paste0("<",round(int$brks[-1],digits=0)),    fill=palette, border=palette,
 bty="n", title="", cex=1.3, y.intersp = 0.75)
 data(wrld_simpl)
 wrld_simpl.sp <- spTransform(wrld_simpl, " proj=moll")
 plot(wrld_simpl.sp,add=T)
 

Комментарии:

1. Я настоятельно рекомендую использовать пакеты ggplot2 и ggspatial для создания пространственных участков

2. можете ли вы поделиться некоторыми данными, которые мы можем использовать?

3. Я попытался поделиться некоторыми данными с dput, но с треском провалился — попробую еще раз сохранить и поделиться некоторыми данными, но пока я предоставил заголовок данных (надеюсь, это все еще немного помогает). Извините, я привык работать с обычными кадрами данных и все еще перегружен этим многоугольным кадром данных..

4. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.

Ответ №1:

Просто для того, чтобы ты начал с ggplot2 этого . Это обеспечит вам большую гибкость, когда вы привыкнете к этому.

 library(maptools)
library(sf)
library(data.table)

#retrieve dataset
data(wrld_simpl)
dt <- wrld_simpl

#set sp to sf (I prefer sf over sp)
dt <- st_as_sf(dt)

#transform to desired projection (just an example)
dt <- dt %>% st_transform(4326)

#add some data and create intervals

  #set as data.table
setDT(dt)

  #add data
dt[, data := 1:nrow(dt)]

  #determine quantiles
quant <- round(quantile(dt$data, c(0.2,0.4)))

  #create category column and group data in a quantile category
dt[data < quant[1], category := paste0("<", quant[1])]
dt[data >= quant[1] amp; data < quant[2], category := paste0(quant[1], "-", quant[2])]
dt[data >= quant[2], category := paste0(">", quant[2])]

  #set to sf
dt <- st_as_sf(dt)

#create plot
ggplot(dt)   geom_sf(aes(fill = category), col = "black", size = 0.001)   
  theme_bw()   scale_fill_brewer(palette = "Set2")   
  coord_sf(expand = FALSE)   theme(text = element_text(size = 15))
 

фигура