Когда я создаю группу связанных ящиков (выбор точек в одной квадратной ячейке выделяет соответствующие точки во всех ящиках), ящики автоматически обновляются неопределенное количество раз (иногда только один раз, но иногда до 20 раз).R Shiny, как остановить ggplot boxplots от обновления себя, как в группе связанных ящиков.
Пожалуйста, используйте следующий пример кода.
Я считаю, что источником проблемы является geom_jitter(). Есть ли способ остановить обновление ящиков? Благодарю.
library(shiny)
library(ggplot2)
server <- function(input, session, output) {
X = data.frame(x1 = rnorm(1000),
x2 = rnorm(1000),
week = sample(LETTERS[1:10],1000,replace = TRUE)
)
D = reactive({
brushedPoints(X,input$brush_1, allRows = TRUE)
})
output$p1 = renderPlot({
set.seed(123)
ggplot(D(),aes(x=week,y=x1))+
geom_boxplot() +
geom_jitter(aes(color=selected_))+
scale_color_manual(values = c("black","red"),guide=FALSE)
})
output$p2 = renderPlot({
set.seed(123)
ggplot(D(),aes(x=week,y=x2))+
geom_boxplot() +
geom_jitter(aes(color=selected_))+
scale_color_manual(values = c("black","red"),guide=FALSE)
})
}
ui <- fluidPage(
splitLayout(
plotOutput("p1",brush = "brush_1"),
plotOutput("p2",brush = "brush_1")
)
)
shinyApp(ui = ui, server = server)
Update: 2016-9-16
Я попытался заменить geom_jitter
с geom_point
, но графики еще постоянно обновлять себя.
Таким образом, geom_jitter
не может быть подозреваемым.
Итак, каков источник проблемы на земле?
Возможно, вы можете рассчитать дрожание заранее и вместо этого использовать 'geom_point'. – Axeman
Также обратите внимание, что вы должны, вероятно, отключить точки выброса ящиков. – Axeman
@Axeman Можете ли вы дать мне пример использования 'geom_point' для получения аналогичной диаграммы с точками, расположенными вокруг вертикального центра окна? Благодарю. – John