【问题标题】:Strange behavior of y axis in histograms直方图中 y 轴的奇怪行为
【发布时间】:2015-10-10 05:13:29
【问题描述】:

我想使用 ggivs 将一组不同变量的直方图放在同一个缩放的 y 轴上。但是,一旦我的坐标轴明显大于变量的最高计数,它们就会开始变得非常奇怪,甚至开始在负方向上绘制条形图。这是我的数据http://rpubs.com/elinw/116698

这是一个可重现的例子

# no values specified
iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
   add_axis("y", title = "Count", title_offset="50") 
   add_axis("x", title = "Width", title_offset="50") 

#0 to 150
 iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
   add_axis("y", title = "Count", title_offset="50",  values = seq(0,150, by = 10))  %>%
   add_axis("x", title = "Width", title_offset="50") 

  #0 to 175
 iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
   add_axis("y", title = "Count", title_offset="50",  values = seq(0,200, by = 10))  %>%
   add_axis("x", title = "Width", title_offset="50") 

 #0 to 250
 iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
   add_axis("y", title = "Count", title_offset="50",  values = seq(0,250, by = 10))  %>%
   add_axis("x", title = "Width", title_offset="50") 

#0 to 500
 iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
   add_axis("y", title = "Count", title_offset="50",  values = seq(0,500, by = 10)) 
   add_axis("x", title = "Width", title_offset="50") 

我已阅读文档,但对此一无所知。我可以更改属性中的某些内容以使其正常工作吗?或者对此有已知的规则吗?还是bug?

【问题讨论】:

    标签: r ggvis


    【解决方案1】:

    add_axis 中的参数 values 仅设置刻度在轴上的位置,但不会更改轴的最小和最大限制 (ylim/xlim)。根据ggvis doc,您需要在scale_numeric() 中设置参数domain。试试这个:

    iris %>% ggvis(~Sepal.Width) %>% layer_histograms(width = 1)  %>%
      add_axis("y", title = "Count", title_offset="50",  values = seq(0,150, by = 10))  %>%
      ## Set axis limits:
      scale_numeric("y", domain = c(0, 150), nice = FALSE) %>% 
      add_axis("x", title = "Width", title_offset="50")
    

    你可以在这里看到所有的情节:http://rpubs.com/scoa/116718

    【讨论】:

    • 你知道为什么我所做的事情会导致图表以这种方式发生变化吗?
    • 我认为 ggvis 无法理解在轴范围之外的位置放置刻度线的位置。但我不知道为什么它会产生奇怪的倒置图......也许你应该在他们的跟踪器上将它报告为一个错误,因为这是一个意想不到的行为。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2020-08-24
    • 2021-03-06
    相关资源
    最近更新 更多