我有一个 SpatialPolygonsDataFrame,其中包含包含十六进制颜色值的列。我想用 tmap 包来绘制这样的地图:
tm_shape(full.shp) + tm_fill(col="konf1900")
Run Code Online (Sandbox Code Playgroud)
但随后它被视为类别变量,结果是:

我不知道如何告诉 tmap 它应该直接在地图上绘制颜色值......
有人可以帮忙吗?
编辑:
请参阅下面的答案 - 问题是数据帧列未编码as.character。我想这有时可能会对某人有所帮助......
显然,问题出在列的类型上:
full.shp$konf1900char <- as.character(full.shp$konf1900)
tm_shape(full.shp) + tm_fill(col="konf1900char")
Run Code Online (Sandbox Code Playgroud)
需要将其转换为带有as.character. 另外,重要的是没有 NA 值,它们可以转换为白色(十六进制格式的#ffffff):
full.shp$konf1900char[is.na(full.shp$konf1900char)] <- "#ffffff"
Run Code Online (Sandbox Code Playgroud)
通过这些转换,它可以很好地与 tmap 配合使用,并且 tm_fill 从变量中获取颜色值。