4

在此处输入图像描述 对于 x 轴和 y 轴使用 showgrid = TRUE,有没有办法摆脱从 x 和 y 轴延伸的垂直线,以便显示单个平面?

library(plotly)

itemName = c("Alpha", "Bravo", "Charley", "Delta", "Echo", "Foxtrot") 
security = c(0.8583241, 0.7516891, 0.5390520, 0.4569594, 0.3228843, 0.1722286) 
miniX = c(-885.108, -1030.000, -805.889, -695.755, -887.871, -640.986) 
miniY   = c(-445.135, -298.563, -797.709, -806.598, -963.091, -1010)
miniZ   = c(423.694, 417.075, 616.456, 571.223, 575.304, 412.72)

df = data.frame(itemName, security, miniX, miniY, miniZ)

# set a range of colors
colors <- c('#f42f28', '#f2e30e', '#2d9b37', '#31a6f3') 


######### set up 3d scatter plot  #########
p1 <- plot_ly(df, 
             x = miniX, 
             y = miniY, 
             z = miniZ, 
             mode = "markers", 
             size = security, 
             color = security, 
             colors = colors,
             marker = list(symbol = 'circle', sizemode = 'diameter'), sizes = c(10, 20),
             text = paste('Item:', itemName, '<br>Security:', security),
             hoverlabel = list(bgcolor = '#ffffff', bordercolor = 'ffffff', font = list(color = '#000000')),
             hoverinfo = "text"
) %>%
  add_markers() %>%
  layout(title = 'Locales',
         scene = list(xaxis = list(title = '', autorange = TRUE, showgrid = TRUE, zeroline = FALSE, showline = FALSE, autotick = TRUE, ticks = '', showticklabels = FALSE),
                      yaxis = list(title = '', autorange = TRUE, showgrid = TRUE, zeroline = FALSE, showline = FALSE, autotick = TRUE, ticks = '', showticklabels = FALSE),
                      zaxis = list(title = '', autorange = TRUE, showgrid = FALSE, zeroline = FALSE, showline = FALSE, autotick = TRUE, ticks = '', showticklabels = FALSE)
         )
  )

# Output the plot
p1
4

0 回答 0