gpt4 book ai didi

r - plotly 中的静态多边形?可能吗?

转载 作者:行者123 更新时间:2023-12-04 16:01:54 25 4
gpt4 key购买 nike

我一直在尝试创建一个绘图,其中有一些点我想与悬停信息等进行交互,但我想包含两个没有任何交互内容的多边形区域。

对于 MWE:

library(plotly)
data("iris")
xsq <- function(x) sqrt(x)
x <- c( c(seq(0,10,0.001),0,0), c(0.5,10,10,0.5))
y <- c( c(xsq(x[1:length(seq(0,10,0.001))]),xsq(max(x)),0), c(0,2,0,0))

## produce the plotly plot
plot_ly(x = x, y = y, alpha = 0.1, opacity=0.1) %>%
add_polygons(hoverinfo = "none", color = I("red"),showlegend=F) %>%
add_polygons(x = c(0.5,10,10,0.5), y=c(0,2,0,0), hoverinfo = "none",
color = I("blue"), showlegend=F) %>%
add_markers(x=iris$Sepal.Length,y=iris$Sepal.Width-2, opacity=1, alpha=1,
color=iris$Species, hoverinfo="text", text=iris$Species)

这有点给了我想要的东西,但我有几个问题:

  1. 未显示多边形区域中点的悬停信息
  2. 如果我选择一个组,那么这两个多边形也会从 View 中消失。即使只选择一组点,我也希望始终保持多边形存在

我也曾尝试使用 ggplot,但运气不佳。

基本上我想我想要的是一种将两个静态多边形添加到绘图中的方法。有没有人有任何其他建议/想法?

谢谢。

最佳答案

因此,经过广泛的搜索和实验后,我找到了解决问题 1 的方法。需要为多边形层包含 hoveron="points"。例如,

plot_ly(x = x, y = y, alpha = 0.1, opacity=0.1) %>%
add_polygons(hoverinfo = "none", color = I("red"),showlegend=F, hoveron="points") %>%
add_polygons(x = c(0.5,10,10,0.5), y=c(0,2,0,0), hoverinfo = "none",
color = I("blue"), showlegend=F, hoveron="points") %>%
add_markers(x=iris$Sepal.Length,y=iris$Sepal.Width-2, opacity=1, alpha=1,
color=iris$Species, hoverinfo="text", text=iris$Species)

关于r - plotly 中的静态多边形?可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50243880/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com