0
我要在纵坐标刻度(y轴)上显示最小值和最大值的情况下,我将绘制一些变量(在箱形图中,但无关紧要) 。在最小值和最大值之间均匀分配y轴刻度
require(ggplot2)
y_min <- min(PlantGrowth$weight)
y_max <- max(PlantGrowth$weight)
ggplot(PlantGrowth, aes(x=group, y=weight)) +
geom_boxplot() +
ylim(y_min, y_max)
结果:
我知道,ylim()
不进行直接编辑y轴的标签,但设置另一个范围时,不小心工作:
ggplot(PlantGrowth, aes(x=group, y=weight)) +
geom_boxplot() +
ylim(0, 8)
直截了当的解决方案可能是自己定义滴答:
ggplot(PlantGrowth, aes(x=group, y=weight)) +
geom_boxplot() +
scale_y_continuous(breaks=c(seq(y_min, y_max, 1.25), y_max))
这几乎总是导致y轴的最后一个和最后一个tick的变化距离。它需要试验seq()
的副参数,直到我们有一个均匀勾选的包含最小值和最大值的y轴。有没有一种优雅的方式?不一定是ggplot2()
解决方案,但可以在seq()
上运行?