您将如何在 Flexdashboard R 中生成多个散点图
How would you generate multiple scatterplot in Flexdashboard R
我有一个反应性输入,取值从 1 到 12,我想要实现的是使用一列作为 x 变量(总是),不同列作为 y 变量的图 - 下面的输入有效很好,但显然是硬编码的,所以如果我使用的变量少于或多于 6 个,绘图就不起作用
ggplotly(
ggplot(table_plot(),aes(x=Streamer_Offset)) +
geom_point(aes(y= CMP_1, color = "Source 1"))+
geom_point(aes(y= CMP_2, color = "Source 2"))+
geom_point(aes(y= CMP_3, color = "Source 3"))+
geom_point(aes(y= CMP_4, color = "Source 4"))+
geom_point(aes(y= CMP_5, color = "Source 5"))+
geom_point(aes(y= CMP_6, color = "Source 6"))
)
我想做的是放置一个变量向量,例如 c(CMP_1,CMP_2.....) 等等,我尝试使用以下代码创建一个向量,然后传递给公式,但 ggplot 无法识别输入
l <- colnames(table_plot())
m <- c(paste0("~",l))
d <- m[1:length(m)-1]
as.formula(d)
此外,我尝试了 ggloop 和 renderPlot 或 renderPLotly 无法使用该函数,因此,我不确定原则上该怎么做,这应该不是一个非常复杂的过程。
如果你得到长格式的数据会更容易。试试这个 -
library(tidyverse)
ggplotly(
ggplot(table_plot() %>% pivot_longer(cols = -Streamer_Offset),
aes(x=Streamer_Offset, y = value, color = name))
)
我有一个反应性输入,取值从 1 到 12,我想要实现的是使用一列作为 x 变量(总是),不同列作为 y 变量的图 - 下面的输入有效很好,但显然是硬编码的,所以如果我使用的变量少于或多于 6 个,绘图就不起作用
ggplotly(
ggplot(table_plot(),aes(x=Streamer_Offset)) +
geom_point(aes(y= CMP_1, color = "Source 1"))+
geom_point(aes(y= CMP_2, color = "Source 2"))+
geom_point(aes(y= CMP_3, color = "Source 3"))+
geom_point(aes(y= CMP_4, color = "Source 4"))+
geom_point(aes(y= CMP_5, color = "Source 5"))+
geom_point(aes(y= CMP_6, color = "Source 6"))
)
我想做的是放置一个变量向量,例如 c(CMP_1,CMP_2.....) 等等,我尝试使用以下代码创建一个向量,然后传递给公式,但 ggplot 无法识别输入
l <- colnames(table_plot())
m <- c(paste0("~",l))
d <- m[1:length(m)-1]
as.formula(d)
此外,我尝试了 ggloop 和 renderPlot 或 renderPLotly 无法使用该函数,因此,我不确定原则上该怎么做,这应该不是一个非常复杂的过程。
如果你得到长格式的数据会更容易。试试这个 -
library(tidyverse)
ggplotly(
ggplot(table_plot() %>% pivot_longer(cols = -Streamer_Offset),
aes(x=Streamer_Offset, y = value, color = name))
)