我正在创建一个密度图,我必须根据 x 轴值对区域进行着色。我希望将它与缩放结合起来,这样我就可以绘制完整的图,然后放大彩色区域
1)要放大我执行以下操作:
ggplot(data=mpg, aes(x=displ)) +
geom_density()+
facet_zoom(ylim = c(0,0.15)) +
labs(title="title",
x = "x values",
y = "density") +
theme_bw()
这给了我
- 然后为该区域着色,我执行以下操作
g1g <- ggplot(data=mpg, aes(x=displ)) +
geom_density() +
labs(title="title",
x = "x values",
y = "density") +
theme_bw()
g1g_df <- ggplot_build(g1g)$data[[1]]
g1g + geom_area(data = subset(g1g_df, 5.8 < x & x < 6.0),
aes(x=x,y=y),
fill = "skyblue1",
color = "black")
这给了我
我无法将 facet_zoom 和 geom_area 结合起来,而且我还没有在网上找到可以使用的任何其他好的示例。
理想情况下,我想创建该区域在整个图片中着色的图片,然后我将放大着色区域。然后在放大的部分中,如果能够只绘制 x 轴的特定部分,我尝试将 xlim 添加到 facet_zoom 但它失败了,我猜这是由于我使用 geom_density 造成的。