Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R &引用;“腐败”;世界地图的颜色填充-使用geom_地图_R_Ggplot2_Colors_Spatial - Fatal编程技术网

R &引用;“腐败”;世界地图的颜色填充-使用geom_地图

R &引用;“腐败”;世界地图的颜色填充-使用geom_地图,r,ggplot2,colors,spatial,R,Ggplot2,Colors,Spatial,我想使用ggplot、maps和mapdata在世界地图上可视化一些数据 指向.xls文件的链接是* 让我们看看代码: library(maps) library(mapdata) library(readxl) library(ggplot2) library(ggthemes) library(mapproj) mapka <- read_xls(path="Yourpath/mapy2.xls") m <-map_data("world") choro <-merge

我想使用ggplot、maps和mapdata在世界地图上可视化一些数据

指向.xls文件的链接是*

让我们看看代码:

library(maps)
library(mapdata)
library(readxl)
library(ggplot2)
library(ggthemes)
library(mapproj)

mapka <- read_xls(path="Yourpath/mapy2.xls")

m <-map_data("world")
choro <-merge(m, mapka, by="region", all.x=TRUE)
for (i in 1:nrow(choro)) {
  if (is.na(choro$a[i]==TRUE)){choro$a[i]<-0}
  if (is.na(choro$b[i]==TRUE)){choro$b[i]<-0}}

ggplot()+
  geom_map(data=choro, map=choro, aes(long,lat, map_id=region, fill=a)) +
  theme_bw() +
  xlab("") +
  ylab("") + 
  scale_x_continuous(labels=NULL) +
  scale_y_continuous(labels=NULL)
库(地图)
图书馆(地图数据)
图书馆(readxl)
图书馆(GG2)
图书馆(主题)
图书馆(mapproj)

mapka您是否尝试过左联合而不是合并?
如果没有mapka数据,就无法调试代码。

您是否尝试过
左加入而不是合并?

如果没有mapka数据,就不可能调试您的代码。

最好给我们一些代码,以复制您遇到的问题。我能够复制您的代码,而无需使用您提供的链接。我的建议是使用
left\u join()
而不是
merge()
replace\u na()
而不是for循环

库(地图)
图书馆(tidyverse)
图书馆(地图数据)
图书馆(主题)
图书馆(mapproj)
m%
切片(1:100)%>%
变异(a=c(1:100)*40)
#复制您的问题

choro最好给我们一些代码来复制您遇到的问题。我能够复制您的代码,而无需使用您提供的链接。我的建议是使用
left\u join()
而不是
merge()
replace\u na()
而不是for循环

库(地图)
图书馆(tidyverse)
图书馆(地图数据)
图书馆(主题)
图书馆(mapproj)
m%
切片(1:100)%>%
变异(a=c(1:100)*40)
#复制您的问题

谢谢你复杂的建议,我承认我需要学习优化我的R代码。让我再问一句。如何为a=0(灰色)和>0蓝色调色板设置颜色brewer?您可以跳过
na_replace()
步骤,默认情况下
na
值将为灰色。对于color brewer,您可以使用此代码
+刻度填充蒸馏器(palette=“Blues”,direction=1,na.value=“grey70”)
。如您所见,您可以在此处调整
NA
值的颜色。有关优化代码的更多信息,我推荐Hadley Wickham的R For Data Science图书(也是免费的在线图书)。感谢您提供的复杂建议,我承认我需要学习优化我的R代码。让我再问一句。如何为a=0(灰色)和>0蓝色调色板设置颜色brewer?您可以跳过
na_replace()
步骤,默认情况下
na
值将为灰色。对于color brewer,您可以使用此代码
+刻度填充蒸馏器(palette=“Blues”,direction=1,na.value=“grey70”)
。如您所见,您可以在此处调整
NA
值的颜色。关于优化代码的更多信息,我推荐Hadley Wickham的R For Data Science一书(在线免费)。