在R中绘制绘图时,使用plotly总是显示原点(0,0)

时间:2017-11-22 13:51:38

标签: r plotly

我有一个闪亮的应用程序,它呈现一个散点图。闪亮的用户执行数据过滤,然后数据显示在绘图中。有时,创建的数据将全部为负数或全部为正数,但我仍希望绘制一个显示原点(0,0)的方式。

示例:

dd <- data.frame(x=c(2,3,6,2), y=c(5,2,7,3))
plot_ly(data=dd, x=~x, y=~y, type="scatter", mode="markers")

给出:

enter image description here

但我希望它最初看起来更像:

enter image description here

知道怎么做吗?

2 个答案:

答案 0 :(得分:2)

使用rangemode:

plot_ly(data=dd, x=~x, y=~y, type="scatter", mode="markers") %>%
  layout(
    xaxis = list(rangemode = "tozero"), 
    yaxis = list(rangemode = "tozero"))

enter image description here

这也适用于dd2 <- -1 * dd

plot_ly(data=dd2, x=~x, y=~y, type="scatter", mode="markers") %>%
  layout(
    xaxis = list(rangemode = "tozero"), 
    yaxis = list(rangemode = "tozero"))

enter image description here

答案 1 :(得分:1)

可以修改布局中的轴范围,如下所示:

plot_ly(data=dd, x=~x, y=~y, type="scatter", mode="markers") %>%
  layout(
      xaxis = list(range = c(~min(c(-1,x)), ~max(c(1,x)))),
      yaxis = list(range = c(~min(c(-1,y)), ~max(c(1,y)))))

enter image description here