代码之家  ›  专栏  ›  技术社区  ›  Benjamin Christoffersen

删除曲面打印中的线,并将其打印到x、y和z平面

  •  2
  • Benjamin Christoffersen  · 技术社区  · 7 年前

    当我用 plotly 在R

    library(plotly)
    library(mvtnorm)
    y <- x <- seq(-10, 10, length = 80)
    sig <- diag(7^2, 2)
    cn <-  list(c(0.0, "rgb(192,192,192)"), list(1, "rgb(0, 0, 0)"))
    con <- list(
      x = list(highlight = FALSE), 
      y = list(highlight = FALSE), 
      z = list(highlight = FALSE))
    dens <- matrix(dmvnorm(expand.grid(x, y), sigma = sig), ncol = length(x))
    plot_ly(showscale = FALSE, color = I("black")) %>% 
      add_surface(z = dens, x = x, y = y, colorscale = cn, hoverinfo = "none",
                  opacity = .9, contours = con) %>%
      layout(
        scene = list(
          xaxis=list(title = "x1", range = c(-10, 10)),
          yaxis=list(title = "x2", range = c(-10, 10)),
          zaxis=list(title = "density")), 
        plot_bgcolor = 'rgb(0, 0, 0, 0)', paper_bgcolor = 'rgba(0,0,0,0)')  %>% 
      config(displayModeBar = FALSE)
    

    当我将鼠标悬停在一个点上时,我仍然会得到一条到x、y和z平面的线(我的鼠标在黑色箭头处,我想删除到红色箭头的线)

    enter image description here

    当我把鼠标悬停在图表上时,我不想发生任何事情。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Julius Vainora    7 年前

    更换

    scene = list(
      xaxis = list(title = "x1", range = c(-10, 10)),
      yaxis = list(title = "x2", range = c(-10, 10)),
      zaxis = list(title = "density"))
    

    通过

    scene = list(
      xaxis = list(title = "x1", range = c(-10, 10), showspikes = FALSE),
      yaxis = list(title = "x2", range = c(-10, 10), showspikes = FALSE),
      zaxis = list(title = "density", showspikes = FALSE))
    

    enter image description here

    推荐文章