首页 > 解决方案 > 如何使用ggmap(R)绘制不同的颜色(基于条件)?

问题描述

类似于几个问题,但我有几个独特的问题。(我尝试使用此处的代码,但由于可能使用 ggmap 而不是 ggplot,它对我不起作用)。

我正在尝试根据植物是否感染(1)或未感染(0)病原体来绘制点颜色变化的地图。更好的是,我想 根据植物种类(有 2 个)改变点的颜色(病原体状态)和点的形状。

我的列是样品名称、植物种类(a 或 b)、纬度、经度、病原体状态(0 或 1)

创建了一张地图(只是用于制作地图的示例坐标) map <- get_googlemap(center = c(lon = -111.348284, lat = 38.484637), zoom = 15, maptype = "satellite")

那么这里是代码。它按原样工作,但我不知道在哪里放置条件语句。我使用了国家公园调色板中的颜色。

  ggtitle("Distribution of pathogen") + 
  theme_void() + 
    geom_point(data = data, mapping = aes(x = Longitude, y = Latitude), color = "#7397CB", size=1) +
  theme(
    plot.title = element_text(colour = "#554C6C") , 
    panel.border = element_rect((colour = "#70646E"), fill=NA, size=2)
    ) 

如果之前已经回答过这个问题(我已经检查了其他问题,但没有一个与 ggmap 相关,或者 x 和 y 值不是我想要成为颜色变化的原因),请链接!谢谢-T

标签: rcolorsmapsconditional-statementsggmap

解决方案


将颜色用作美学并设置为病原体状态,并将形状美学设置添加到物种:

 ggtitle("Distribution of pathogen") + 
  theme_void() + 
    geom_point(data = data, mapping = aes(x = Longitude, y = Latitude,
      color=PathogenStatus, shape=Species), size=1) +
  theme(
    plot.title = element_text(colour = "#554C6C") , 
    panel.border = element_rect((colour = "#70646E"), fill=NA, size=2)
    ) 

推荐阅读