用图,RMD过滤派图
我在过滤饼图方面有问题。 基本上,我现在拥有的代码为我过滤的每个值创建了所有不同图表的列表。
regPlotsA<-map(unique(SpLC1721A$Reg), ~SpLC1721A%>%
filter(Reg==.x ) %>%
plot_ly(labels = ~variable, values = ~value, type = 'pie', frame=~Anno)%>%
layout(title = .x ,
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))%>%
animation_opts(
redraw = FALSE, frame =3000, transition= 2900
)
)
我需要做的是将此代码转换为下拉列表的内容,用户可以从中选择针对特定reg值观察到的数据,然后绘制相对图形。 我显然不能在sarkdown文件上做这样的事情,在 ioslides 演示中,我感到很愚蠢。
[我正在处理的数据] [1]
structure(list(X = c("Piemonte", "Valle d'Aosta / Vallée d'Aoste",
"Liguria", "Lombardia", "Trentino Alto Adige / Südtirol", "Veneto",
"Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana", "Umbria",
"Marche", "Lazio", "Abruzzo", "Molise", "Campania", "Puglia",
"Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna"), variable = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("vanno.a.piedi", "usano.mezzi.di.trasporto"
), class = "factor"), value = c(13.8, 16.4, 16.2, 8.6, 17.6,
8.8, 10.2, 9.9, 12.1, 6.9, 7.9, 11.8, 11, 16.3, 18.2, 18, 17.3,
12.7, 13, 14.8, 84.2, 82.5, 83.5, 89.5, 82.2, 90.6, 89.1, 89.4,
87.1, 91.7, 91.4, 86.9, 87.8, 82.6, 80.1, 81, 81.8, 85.9, 85.8,
84.9, 14.3, 21.3, 14.1, 10.3, 14.9, 10.3, 11, 10.9, 11, 9.5,
9.8, 10.6, 12.6, 13.4, 17.4, 16.5, 13.7, 15.1, 15.4, 12.9, 84.8,
77.4, 85, 88.7, 84.6, 88.9, 88, 88.7, 87.7, 89.5, 89.3, 87.1,
86.4, 85.4, 80.6, 81.9, 83.4, 84, 83.3, 86.2, 11.8, 19.9, 17,
10.5, 15.9, 9.4, 12.1, 9.9, 11.3, 10.8, 10.7, 11.2, 7.7, 13.4,
17.1, 15.7, 14, 12.6, 12.8, 14.9, 88.2, 80.1, 83, 89.4, 84.1,
90.6, 87.9, 90.1, 88.7, 89.2, 89.3, 88.8, 92.3, 86.6, 82.9, 84.3,
86, 87.4, 87.2, 85.1, 12.1, 19.7, 14.4, 9.6, 19, 6.4, 9, 9.7,
10.7, 9, 11, 9.5, 13.2, 12.5, 20.3, 14.2, 12.8, 16.6, 13.3, 14.9,
87.9, 80.3, 85.6, 90.4, 81, 93.6, 91, 90.3, 89.3, 91, 89, 90.5,
86.8, 87.5, 79.7, 85.8, 87.2, 83.4, 86.7, 85.1, 15.1, 20.4, 15.8,
12.1, 14.2, 7.3, 8.2, 10.7, 9.8, 10.9, 9.4, 11.5, 13.8, 13.7,
17.2, 17, 15.5, 14, 11.6, 13.1, 84.9, 79.6, 84.2, 87.9, 85.8,
92.7, 91.8, 89.3, 90.2, 89.1, 90.6, 88.5, 86.2, 86.3, 82.8, 83,
84.5, 86, 88.4, 86.9), Anno = c(2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021)), row.names = c(NA,
-200L), class = "data.frame")
I am having a problem with filtering a pie chart.
Basically the code I have now creates a list with all the different charts for each of the value i filter.
regPlotsA<-map(unique(SpLC1721A$Reg), ~SpLC1721A%>%
filter(Reg==.x ) %>%
plot_ly(labels = ~variable, values = ~value, type = 'pie', frame=~Anno)%>%
layout(title = .x ,
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))%>%
animation_opts(
redraw = FALSE, frame =3000, transition= 2900
)
)
What I need to do is turn this code into something with a dropdown from which the user can select the data observed for a specific Reg value and then plot the relative graphic.
I can't apparently do a thing like this on a markdown file, in a ioslides presentation, and I feel so stupid.
[Data that I'm working on][1]
structure(list(X = c("Piemonte", "Valle d'Aosta / Vallée d'Aoste",
"Liguria", "Lombardia", "Trentino Alto Adige / Südtirol", "Veneto",
"Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana", "Umbria",
"Marche", "Lazio", "Abruzzo", "Molise", "Campania", "Puglia",
"Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna", "Piemonte",
"Valle d'Aosta / Vallée d'Aoste", "Liguria", "Lombardia", "Trentino Alto Adige / Südtirol",
"Veneto", "Friuli-Venezia Giulia", "Emilia-Romagna", "Toscana",
"Umbria", "Marche", "Lazio", "Abruzzo", "Molise", "Campania",
"Puglia", "Basilicata", "Calabria", "Sicilia", "Sardegna"), variable = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("vanno.a.piedi", "usano.mezzi.di.trasporto"
), class = "factor"), value = c(13.8, 16.4, 16.2, 8.6, 17.6,
8.8, 10.2, 9.9, 12.1, 6.9, 7.9, 11.8, 11, 16.3, 18.2, 18, 17.3,
12.7, 13, 14.8, 84.2, 82.5, 83.5, 89.5, 82.2, 90.6, 89.1, 89.4,
87.1, 91.7, 91.4, 86.9, 87.8, 82.6, 80.1, 81, 81.8, 85.9, 85.8,
84.9, 14.3, 21.3, 14.1, 10.3, 14.9, 10.3, 11, 10.9, 11, 9.5,
9.8, 10.6, 12.6, 13.4, 17.4, 16.5, 13.7, 15.1, 15.4, 12.9, 84.8,
77.4, 85, 88.7, 84.6, 88.9, 88, 88.7, 87.7, 89.5, 89.3, 87.1,
86.4, 85.4, 80.6, 81.9, 83.4, 84, 83.3, 86.2, 11.8, 19.9, 17,
10.5, 15.9, 9.4, 12.1, 9.9, 11.3, 10.8, 10.7, 11.2, 7.7, 13.4,
17.1, 15.7, 14, 12.6, 12.8, 14.9, 88.2, 80.1, 83, 89.4, 84.1,
90.6, 87.9, 90.1, 88.7, 89.2, 89.3, 88.8, 92.3, 86.6, 82.9, 84.3,
86, 87.4, 87.2, 85.1, 12.1, 19.7, 14.4, 9.6, 19, 6.4, 9, 9.7,
10.7, 9, 11, 9.5, 13.2, 12.5, 20.3, 14.2, 12.8, 16.6, 13.3, 14.9,
87.9, 80.3, 85.6, 90.4, 81, 93.6, 91, 90.3, 89.3, 91, 89, 90.5,
86.8, 87.5, 79.7, 85.8, 87.2, 83.4, 86.7, 85.1, 15.1, 20.4, 15.8,
12.1, 14.2, 7.3, 8.2, 10.7, 9.8, 10.9, 9.4, 11.5, 13.8, 13.7,
17.2, 17, 15.5, 14, 11.6, 13.1, 84.9, 79.6, 84.2, 87.9, 85.8,
92.7, 91.8, 89.3, 90.2, 89.1, 90.6, 88.5, 86.2, 86.3, 82.8, 83,
84.5, 86, 88.4, 86.9), Anno = c(2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017,
2017, 2017, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018,
2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019,
2019, 2019, 2019, 2019, 2019, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020,
2020, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021,
2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021)), row.names = c(NA,
-200L), class = "data.frame")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据您的评论,
我假设您的
x
dput 输出的列应该是您要过滤的reg
之上。我将名称更改为reg
此答案。这是您可以完成这项工作的众多方法之一。您可以使用绘图来进行此下拉。但是,如果您使用的是RMD,我发现使用可用的许多其他工具更容易。
这使用了软件包
shinyrpg
,但这不是闪亮的运行时(或与闪亮应用程序有关的任何内容)。我很确定这仍然不是克兰包装。您可以使用devTools :: install_github(“ Rinterface/Shinyrpg”)
获得此库。我首先创建样式标签以隐藏所有图,并在下拉菜单和图之间添加一些空间。更改可见性可确保最初只用一个图加载。 (与代码的其余部分结合使用时。)然后,我创建下拉菜单并附加一个换事事件。
接下来,我添加了图形。
最后,我编写了确保第一个绘图可见的代码,并在JavaScript中进行了对事件。如果您运行此块,则不会做任何事情。您必须编织才能执行JS。
Updated based on your comment
I'm assuming that the column named
X
in yourdput
output is supposed to be theReg
that you're filtering upon. I changed the name toReg
for this answer.This is one of many ways that you can make this work. You could use Plotly to make this dropdown. However, if you're using RMD, I find it a lot easier to use the many other tools available.
This uses the package
shinyRPG
, but it's not a Shiny runtime (or anything related to Shiny applications). I'm pretty sure this still isn't a CRAN package. You can get this library withdevtools::install_github("RinteRface/shinyRPG")
.I start by creating style tags to hide all of the plots and add a bit of space between the dropdown menu and the plots. Changing the visibility ensures it will only load with one plot initially. (When combined with the rest of the code.) Then I create the dropdown menu and attach an on-change event.
Next, I added the graphs.
Lastly, I write the code for ensuring the first plot is visible and the on-change event in Javascript. If you run this chunk it won't do anything. You have to knit to execute JS.