Cook R数据科学与R语言R语言与统计分析

「r<-ggplot2」去掉坐标留余

2019-10-04  本文已影响0人  王诗翔

ggplot2 在绘图的时候,会在数据的边界部分进行留余操作(base plot 也会这么做),这样使得数据不会落到坐标轴的边界甚至超出边界,大多数情况这是好的。但较真的我们往往在绘图时想要去掉这个留余,我在之前的文章《分析与可视化ROC——plotROC、pROC》就用到过,用来去掉连续数值轴的留白。

离散轴也是可以去掉这个留白的,这类问题其实都需要修改 ggplot2 的标尺,即以scales_开头的函数。通过上面的代码我们可以进行类推,下面使用 ggplot2 提供的示例数据看一个例子。

> d <- ggplot(subset(diamonds, carat > 1), aes(cut, clarity)) +
+     geom_jitter()
> d

可以看到上面的图像是有留白的,下面尝试去掉它:

> d + scale_x_discrete(expand = c(0, 0)) + scale_y_discrete(expand = c(0, 0))

的确可以。其他类似的操作应该也可以进行类推。这种易理解、易使用的特性是和 ggplot2 的语法和良好 API 分不开的。

上一篇下一篇

猜你喜欢

热点阅读