Я хочу создать очень простую диаграмму Ганта с помощью RShiny и ggplot2. Я не хочу использовать пакеты или предопределенные диаграммы Ганта как здесь. Я предпочитаю создать диаграмму, построив несколько линий одна над другой и все они будут параллельны. Это не должно быть очень сложно, но у меня проблемы с фреймом данных за диаграммой.
У меня очень простой фрейм данных, например:
test_df_1 <- data.frame("x_1" = c(1,2,3),
"x_2" = c(2,4,5),
"y" = c(1,2,3),
"group" = c("A","B","C"))
Строки должны быть от 1 до 2 для y = 1, от 2 до 4 для y = 2 и т. Д. С помощью этих строк кода я получаю пустой график (но без сообщения об ошибке):
output$test <- renderPlot({
df_test <- data.frame(x_1=unlist(test_df_1$x_1), x_2=unlist(test_df_1$x_2),
y=unlist(test_df_1$y), group=unlist(test_df_1$group))
ggplot(data=df_test, aes(x=x_1, y=y, group=y)) +
geom_line() +
theme_bw()
})
Я уверен в том, что я не «импортировал» x_2 в ggplot. Но я не знаю, как это сделать.
Когда я пробую фрейм данных в несколько другом порядке (который мне на самом деле не нужен):
test_df_2 <- data.frame("x_1" = c(1,2,2,4,3,5),
"y" = c(1,1,2,2,3,3),
"group" = c("A","","B","","C",""))
И нарисуйте это:
output$test <- renderPlot({
df_test <- data.frame(x_1=unlist(test_df_2$x_1),
y=unlist(test_df_2$y), group=unlist(test_df_2$group))
ggplot(data=df_test, aes(x=x_1, y=y, group=y)) +
geom_line() +
theme_bw()
})
Я получаю ожидаемый результат.
Как мне получить желаемый многострочный график со структурой первого фрейма данных (test_df_1)?
test_df_1
во что-то похожее наtest_df_2
- person A. Suliman   schedule 12.08.2019