我在 R 中使用plotly 创建极坐标图,但不确定为什么输出看起来有点奇怪。尽管显示为单独的点,但它似乎没有封装几何线中的最大点。有没有办法纠正这个/我的代码(如下)不正确?
fig <- plot_ly(type = 'scatterpolar',
mode = 'lines')
fig <- fig %>%
add_trace(
r = proj_cell_FA_h2_df$Enrichment,
theta = proj_cell_FA_h2_df$cell_type,
name = 'test',
mode = 'markers',
fill = 'toself'
)
fig <- fig %>% layout(polar = list(
radialaxis = list(
visible = T,
range = c(0,3),
dtick = 1
)
),
showlegend = F
)
fig
谢谢!
上面显示的代码,期望几何形状/线性轮廓封装最大点,但似乎只有标记/点点可见 - 为什么?
如果没有所需的示例数据,很难说,但看起来您正在尝试通过每个θ的大量 r 值来追踪一条线。因此,阴谋地尝试导出一个有意义的中心 r per theta(可能是平均值或中位数)。
在这种情况下,您可以使用两条迹线,一条用于点,一条(仅)连接极值点。考虑
iris
数据集:
library(plotly)
library(dplyr)
iris_summary <-
iris |>
summarise(Sepal.Length = max(Sepal.Length), .by = Species)
plot_ly(type = 'scatterpolar',
mode = 'markers') |>
add_trace(
data = iris_summary,
r = ~ Sepal.Length,
theta = ~ Species,
fill = 'toself'
) |>
add_trace(
r = iris$Sepal.Length,
theta = iris$Species,
name = 'test'
)