Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Plotly在R中的直方图顶部覆盖垂直线_R_Plotly - Fatal编程技术网

使用Plotly在R中的直方图顶部覆盖垂直线

使用Plotly在R中的直方图顶部覆盖垂直线,r,plotly,R,Plotly,我有一个类似下面的柱状图,我想在柱状图的顶部绘制一条特定值的垂直线 我的直方图代码是: library(plotly) p <- plot_ly(x = ~rnorm(50,mean = 50,sd = 10), type = "histogram") p library(plotly) plibrary(plotly) 种子(1) p% 添加_段(x=42,y=0,xend=42,yend=14,line=list(color=“red”,width=4)) P 另一种解决方案(有关

我有一个类似下面的柱状图,我想在柱状图的顶部绘制一条特定值的垂直线

我的直方图代码是:

library(plotly)
p <- plot_ly(x = ~rnorm(50,mean = 50,sd = 10), type = "histogram")
p
library(plotly)
p
library(plotly)
种子(1)
p%
添加_段(x=42,y=0,xend=42,yend=14,line=list(color=“red”,width=4))
P
另一种解决方案(有关详细信息,请参阅):


vline
abline(v=42)
或者,使用你的对象
abline(v=x)
我已经试过了。我收到一个错误
plot.new尚未调用
哦,您正在使用plotly,请尝试使用“直方图”进行打印?我仅限于使用
plotly
此处
add.trace
帮助您。谢谢Marco。这很有效。你知道有没有办法找到直方图的最大高度,这样我就可以用它来指定
yend
而不是硬编码了吗?@krish你找到了找到yend的方法吗?@MarcoSandri你找到了找到yend的方法吗?谢谢@MarcoSandri这很好用,我们花了10个小时寻找这个解决方案,关于这个问题的信息不多
x <- 42
library(plotly)
set.seed(1)
p <- plot_ly(x = ~rnorm(50,mean = 50,sd = 10), type = "histogram") %>%
  add_segments(x=42, y=0, xend=42, yend=14, line=list(color="red", width = 4))
p
vline <- function(x = 0, color = "red") {
  list(
    type = "line", 
    y0 = 0, 
    y1 = 1, 
    yref = "paper",
    x0 = x, 
    x1 = x, 
    line = list(color = color)
  )
}
p <- plot_ly(x = ~rnorm(50, mean = 50,sd = 10), type = "histogram") %>%
  layout(shapes = list(vline(42)))
p