我正在使用这个R代码:
library(rworldmap)
Data <- read.table("D:/Bla/Maps/Test.txt", header = TRUE, sep = "\t")
sPDF <- joinCountryData2Map(Data, joinCode = "ISO3",nameJoinColumn = "ISO3CountryCode")
mapCountryData(sPDF, nameColumnToPlot = "Data")
这会产生一张地图,但我得到了:
你要求7个分位数,只能在分位数分类中创建1个
我用Google搜索,它指向this code
不确定是否相关。
这是我使用的数据:
ISO3CountryCode Data
JPN 7
AUS 6
IND 6
CHN 5
GBR 5
CHE 4
IRN 4
DEU 3
EGY 3
ESP 3
LBY 3
TUN 3
USA 3
ARG 2
AUT 2
BRA 2
EST 2
GRC 2
ITA 2
TUR 2
URY 2
CHL 1
ETH 1
FRA 1
JOR 1
KEN 1
KOR 1
LTU 1
MEX 1
NLD 1
NZL 1
PER 1
POL 1
SAU 1
SRB 1
SVK 1
SVN 1
TZA 1
ZAF 1
答案 0 :(得分:2)
默认情况下,mapCountryData()
会尝试将数据与分位数拟合以进行分箱。您需要通过调整catMethod
参数来帮助它。
我不确定你的值1到7是什么意思。如果它们是类别(并且您希望它们都明确显示在图例中),请尝试:
mapCountryData(sPDF, nameColumnToPlot = "Data", catMethod="categorical")
如果您想在连续范围内平等对待所有值,请尝试:
mapCountryData(sPDF, nameColumnToPlot = "Data", catMethod="fixedWidth")
如果这些都不符合您的要求,您可以尝试更改numCats
和/或catMethod
,查看?mapCountryData
可能的值及其含义。