如何获得更合乎逻辑的比例尺?
How do I get a more logical scale bar?
我已经绘制了整个英国的长尾小鹦鹉观测点数据(目前是假的),观测点按观测区域的人口密度着色。我有一个连续的比例尺,但我想要scale 本身被笨拙地注释。我怎样才能用更均匀的分隔线绘制它?
代码如下:
############################
#情节观察 x POP_DENS
############################
ggplot() +
geom_polygon(data = UK, aes(x=long, y = lat, group = group), fill="gray14", alpha=0.7) +
geom_point(data=paratweets_4, aes(x=coords.x1, y=coords.x2, color=pop_dens, shape=Occupancy), size=2,stroke=FALSE) +
scale_color_viridis(option="magma", trans="log", name="Human Population Density (km2)") +
theme_minimal() + ylim(50,59) + coord_map() +
ggtitle("Parakeet Observations")
这是地图:
一种策略是为比例尺制作一列,并使用对您有意义的指标。例如,
df %>%
mutate(scale_column = case_when(
pop_dens == 0 ~ "0",
pop_dens > 0 & pop_dens < 100 ~ "0-100",
pop_dens > 100 & pop_dens < 1000 ~ "100-999",
pop_dens > 1000 & pop_dens < 2000 ~ "1000-1999",
))
然后使用该列作为您的比例。
另一种选择是修改 breaks of the scales.
但是,我认为在这种情况下,不按颜色缩放可能是有意义的,而是更改点的 size
。
我已经绘制了整个英国的长尾小鹦鹉观测点数据(目前是假的),观测点按观测区域的人口密度着色。我有一个连续的比例尺,但我想要scale 本身被笨拙地注释。我怎样才能用更均匀的分隔线绘制它?
代码如下:
############################ #情节观察 x POP_DENS ############################
ggplot() +
geom_polygon(data = UK, aes(x=long, y = lat, group = group), fill="gray14", alpha=0.7) +
geom_point(data=paratweets_4, aes(x=coords.x1, y=coords.x2, color=pop_dens, shape=Occupancy), size=2,stroke=FALSE) +
scale_color_viridis(option="magma", trans="log", name="Human Population Density (km2)") +
theme_minimal() + ylim(50,59) + coord_map() +
ggtitle("Parakeet Observations")
这是地图:
一种策略是为比例尺制作一列,并使用对您有意义的指标。例如,
df %>%
mutate(scale_column = case_when(
pop_dens == 0 ~ "0",
pop_dens > 0 & pop_dens < 100 ~ "0-100",
pop_dens > 100 & pop_dens < 1000 ~ "100-999",
pop_dens > 1000 & pop_dens < 2000 ~ "1000-1999",
))
然后使用该列作为您的比例。
另一种选择是修改 breaks of the scales.
但是,我认为在这种情况下,不按颜色缩放可能是有意义的,而是更改点的 size
。