【问题标题】:Log scale & change domain for axis in ggplot2ggplot2中轴的日志比例和更改域
【发布时间】:2017-06-09 23:23:40
【问题描述】:

目前,我希望在 ggplot2 中生成平滑曲线。为了正确查看数据,我需要限制 x 轴的域并记录 x 轴的比例。我的代码如下:

sample <- ggplot(x, aes(abc, xyz)) +
          scale_x_log10() + 
          scale_x_continuous(1,10000) +
          #xlim(1, 10000)

          ### attempted xlim as opposed to scale_x_continuous with the same 
          ### result.

我收到的警告如下,“'x' 的比例已经存在。为 'x' 添加另一个比例,它将替换 现有规模。”

基本上,我可以选择其中一个功能。

是否有一种机制可以记录 x 轴刻度并将域设置为 1 到 10,000,而不用一个函数覆盖另一个函数?

如果您需要更多详细信息,请随时发表评论。我试图研究一个类似的问题,但无济于事,所以如果您发现这是重复的,请不要犹豫,将其标记为此类。

【问题讨论】:

标签: r ggplot2


【解决方案1】:


library(ggplot2)

x <- data.frame(abc = runif(1000, 1, 100000),
                xyz = runif(1000, 1, 10))
ggplot(x, aes(abc, xyz)) +
  geom_point()

ggplot(x, aes(abc, xyz)) +
  geom_point() +
  scale_x_log10(limits = c(1, 10000))
#> Warning: Removed 927 rows containing missing values (geom_point).

【讨论】:

  • 范围为 [1, 10000],所有大于该范围的值(共有 927 个)都从图中删除。
  • 让我澄清一下:在 scale_x_log10 函数中设置 limits 会删除所有超出限制的点,从而导致此警告。您可以放心地忽略它。
猜你喜欢
  • 2018-11-20
  • 1970-01-01
  • 2014-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-27
  • 2017-09-11
  • 1970-01-01
相关资源
最近更新 更多