Create Dropdown Menu in plotly Graph in R (Example)
I am happy to welcome you to another interesting tutorial from Statistics Globe. In this one, I will show you how to add a dropdown menu to your plotly graph using the R programming language. It is really simple to do as you will see soon.
But first, let’s see a quick summary of what we will do in this tutorial:
Let’s get right into it!
Install & Load plotly
In order to use plotly, we need to first of all download and install it in our R programming environment. Therefore, in R Studio or in any other preferred IDE that can run R, please run the line of code below to download and install R:
This will install plotly and all its dependencies in your R environment.
Having downloaded and installed plotly, the next thing to do is to load it, so that we can have access to all of plotly’s plot-building functions:
Install & Load dplyr
We will also need to install and load the R dplyr library, which is the most popular library in R programming for data manipulation and analysis. With the dplyr library, we can make use of the pipe operator to run lines of code together as a chunk. Therefore, run the lines of code below to install and load dplyr:
Note, however, that you can still run plotly code without needing dplyr’s pipe operator. Nevertheless, piping lines of code together makes the code neater and easier to understand, and is typically considered best practice.
Build a Plotly Plot
Let’s now build a simple violin plot using the popular iris dataset for the demonstration. In R Studio, the iris dataset comes preloaded. But if you are using another IDE, then you may need to download the dataset from an online dataset repository.
You can print out the first 10 rows of the data frame if you like, as follows.
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species #1 5.1 3.5 1.4 0.2 setosa #2 4.9 3.0 1.4 0.2 setosa #3 4.7 3.2 1.3 0.2 setosa #4 4.6 3.1 1.5 0.2 setosa #5 5.0 3.6 1.4 0.2 setosa #6 5.4 3.9 1.7 0.4 setosa #7 4.6 3.4 1.4 0.3 setosa #8 5.0 3.4 1.5 0.2 setosa #9 4.4 2.9 1.4 0.2 setosa #10 4.9 3.1 1.5 0.1 setosa
Now we can build a violin plot of the sepal width.
fig <- iris |> plot_ly(x = ~Species, y = ~Sepal.Width, split = ~Species, type = "violin") fig
Hovering over the plot, you will see important summary statistical information about the sepal width of each species of the iris flower. However, our goal is to add some more interactivity to our plot by including a dropdown filter, and that is what we will do next.
Add a Dropdown Menu to a plotly Plot
Here, we will include a dropdown filter to our violin plot which will enable us to switch between different kinds of visualizations. You can run the chunk of code below to add a dropdown filter to the violin plot.
fig <- iris |> plot_ly(x = ~Species, y = ~Sepal.Width, split = ~Species, type = "violin") |> layout( title = "Dropdown Menu in plotly in R", updatemenus = list( list( buttons = list( list( method = "restyle", args = list("type", "violin"), label = "Violin Plot" ), list( method = "restyle", args = list("type", "box"), label = "Box Plot" ), list( method = "restyle", args = list("type", "bar"), label = "Bar Plot" ) ) ) ) ) fig
layout() function, we parsed a list to the
updatemenus = argument, which contains the types of plots in the dropdown filter and their respective labels. And as you have just seen, it is actually very simple to add a dropdown filter to a plotly graph in R. You can try to add other kinds of visualizations to the list, in order to increase the options available to your users.
Video, Further Resources & Summary
Do you need more explanations on how to make dropdown menu in plotly graph in R? Then you should have a look at the following YouTube video of the Statistics Globe YouTube channel.
In the video, we explain in some more detail how to make dropdown menu in plotly graph in R.
The YouTube video will be added soon.
I hope you found this tutorial helpful. If yes, then be sure to check out other interesting plotly in R tutorials on Statistics Globe:
- Visualize Data Frame in plotly Graph in R (Example)
- How to Draw a plotly Histogram in R (Example)
- How to Draw a plotly Lineplot in R (Example)
- Customize Legend of plotly Graph in R (Example)
- Change plotly Axis Labels in R (Example)
- Order Bars in plotly Barchart in R (Example)
- Learn R Programming
This post has shown how to add a dropdown menu in plotly graphs in R. In case you have further questions, you may leave a comment below. I will see you soon at the next one!
This page was created in collaboration with Ifeanyi Idiaye. You might check out Ifeanyi’s personal author page to read more about his academic background and the other articles he has written for the Statistics Globe website.
Statistics Globe Newsletter