Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.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
如何在rworldmap包中修改图例_R_Rworldmap - Fatal编程技术网

如何在rworldmap包中修改图例

如何在rworldmap包中修改图例,r,rworldmap,R,Rworldmap,我正试图绘制一张地图,用该国GDP的颜色编码。数据集是这样的 Country GDP Afghanistan 20315 Armenia NA Bahrain 32215 这是我的密码 library(rworldmap) countries = read.csv("countries.csv", na.strings = " NA") sPDF = joinCountryData2Map(countries, joinCode = "NAME

我正试图绘制一张地图,用该国GDP的颜色编码。数据集是这样的

Country        GDP
Afghanistan    20315
Armenia        NA
Bahrain        32215
这是我的密码

library(rworldmap)
countries = read.csv("countries.csv", na.strings = " NA")

sPDF = joinCountryData2Map(countries, joinCode = "NAME", nameJoinColumn = "Country")
mapCountryData(sPDF, nameColumnToPlot = "GDP", missingCountryCol = "dark grey")


这就是我得到的情节。如何编辑图例?我希望它显示从最低到最高的刻度,或类似的数值,而不是显示每个数值。

是否有可能将
GDP
编码为因子或字符(而不是数字)?(使用
str(countries$GDP)
进行检查。如果是,请将其转换为数字,您应该得到一个数字比例的图例,而不是单个值。如果是字符,则执行
countries$GDP=as.numeric(countries$GDP)
;如果是因子,则执行
countries$GDP=as.numeric(as.character(countries$GDP))
@eipi10您是对的,出于某种原因,它被编码为一个因子。我将它转换为数字,现在图例已完全消失。不确定错误,但您是将
作为.numeric(as.character…
还是将
作为.numeric(…
@eipi10我作为.numeric(as.character)(国家$GDP)执行的它消除了错误,但现在绘图没有图例。您可以发布数据样本和再现问题的准确代码吗?这将使您更容易获得帮助。通过将
dput(head(countries))
的输出粘贴到您的问题中来发布数据样本。