要为函数中指定的区域着色plot_usmap()
,您可以通过提供数据data=
,然后将values=
参数设置为数据中用于映射颜色的列。
这是一个包含一些随机生成数据的示例。使用plot_usmap()
的数据集包括美国 50 个州 + 哥伦比亚特区,因此您需要确保它们都在您的数据集中,否则您可能会获得一些 NA 标签。
library(usmap)
library(ggplot2)
set.seed(1234)
color_data <- data.frame(
state = c(state.name, "District of Columbia"),
the_colors = sample(c("A", "B"), size=51, replace=TRUE)
)
plot_usmap(
region = "states",
data = color_data,
values = "the_colors",
color="white"
) +
scale_fill_manual(values=c("#E81B23", "#1405bd"))
请注意,我认为状态之间的线条在白色中看起来不错,因此可以color="white"
解决此问题。您可能还会注意到,您通常不会在数据框中指定实际颜色 - 您可以通过scale_fill_manual(values=...)
. 在您的情况下,您可以使用scale_fill_identity()
.
对于您的数据,只需确保"States"
数据集中的列已重命名"state"
并且它应该可以工作。