我有一个带有两个自然“嵌套”变量的数据框,例如country
和city
,其中城市属于一个国家。我希望ggplot将country
映射到颜色美学,并且对于每个国家/地区,我希望它将city
映射到形状,但是在国家/地区之间进行更改时要重用形状。也就是说,从某种意义上讲,我也希望“嵌套”美学。
这行不通:
aes(color = country, shape = city)
因为它尝试为每个城市(无论国家/地区)设置独特的形状。但是,我想在状态不同的情况下允许重复形状 ,因为不同的颜色可以防止歧义。
我知道可以手动设置刻度,但是我想知道是否有更优雅的解决方案,例如:
# I want something like `nested_aes` below:
aes(color = country, shape = nested_aes(country, city))