在ggplot2中,如果您想要将多个图层(面)和单独的y轴计算结合在一起,您可以使用以下方法:
install.packages("ggplot2")
mtcars
:library(ggplot2)
data(mtcars)
+
运算符将不同的几何图形(geom)添加到图上。例如,我们可以添加两个散点图(scatter plots):ggplot(mtcars, aes(x = wt, y = mpg)) +
geom_point(aes(color = factor(cyl))) +
geom_point(aes(y = disp), color = "red")
在这个例子中,我们绘制了两个散点图。第一个散点图根据cyl
(汽缸数)对点进行着色,第二个散点图显示了每个点的disp
(排量)值。
sec.axis()
函数创建一个次坐标轴,并使用scale_y_continuous()
函数将其与您想要的度量关联起来。下面的示例将disp
(排量)数据添加到次要y轴上:ggplot(mtcars, aes(x = wt)) +
geom_point(aes(y = mpg, color = factor(cyl))) +
geom_line(aes(y = disp), color = "red") +
scale_y_continuous("Miles per Gallon (mpg)", sec.axis = sec_axis(~ . * 1000 / 61.0237, name = "Displacement (cu.in.)"))
在这个例子中,我们将disp
(排量)数据添加到了次要y轴上,并将其与主要y轴(每加仑英里数)关联起来。我们使用sec_axis()
函数创建了一个次坐标轴,并使用scale_y_continuous()
函数将其与您想要的度量关联起来。
请注意,这个方法可能会使图形变得难以阅读,因此在实际应用中,请谨慎使用具有多个y轴的图层。
领取专属 10元无门槛券
手把手带您无忧上云