17 Learning echarts4r with shiny

Ethan Evans

For my Community Contribution project, I created a Shiny web-app tutorial of an interactive visualization package called echarts4r.

The link for my tutorial site can be found here.

17.1 Motivations

I have explored this package at a basic level in my past R experiences but not enough to appreciate its true value. In the times I have used other interactive visualization packages like plotly and htmlwidgets, I have encountered far more coding syntax issues and plot formatting issues than when I have used echarts4r. I also just think echarts4r is the most visually appealing set of graphics I have worked with across any language or software. Thus, I felt like sharing this package with a class that has some new R users would be a great opportunity for both myself and my classmates.

My tutorial addresses a few needs. First, using a Shiny web-based platform shows new R developers one of the ways you can deploy and view interactive visualizations. Second, this tutorial gives a simpler, more manageable overview of the package than other resources. While the documentation and vignettes online are sufficiently comprehensive, they assume a baseline level of R and visualization knowledge that my audience in our class might not have. My tutorial walks through how to build a plot from start to finish, draws comparisons to the familiar ggplot2, and then details a breadth of plots that we have learned about in class. Online echarts4r tutorials might be a bit overwhelming as well, so if viewers are interested after my baseline tutorial, they might go ahead and check out the vast resources online.

17.2 Evaluation and Improvement

Creating this tutorial taught me a lot more about this package and reiterated how easy and intuitive it is to learn. Also, through my deep dive of research on the package before starting the project, I realized just how powerful and unique this package is. I had thought that everything the package had to offer was detailed in the main package website; however, because it is built from Apache ECharts, all methods and functions from that library directly translate to one in echarts4r. Overall, I thought that my tutorial covers the package well and gives the viewer enough knowledge to start exploring on their own.

If I were to design a tutorial for echarts4r again, I would focus on depth rather than breadth. Overall, I could have spent more time giving a better explanation of the fundamentals of a plot and how to perform certain options on the plot, rather than show a dozen different types of plots. While both have their own value, learning the fundamentals of a plot seems better for a beginner tutorial.