Examples of Shiny in use by Commercial Organizations

Ooh, this is really cool! Thanks for the link to the LA county career pathfinder. Going to add this to my list. :slightly_smiling_face:

If you're building a case for IT, take a look at: Customer Stories - RStudio

2 Likes

Thanks @slopp ! This is a fantastic resource. I had seen it before, but it looks like there are more case studies there now. I will definitely look through this in more detail.

Two more external Shiny dashboards from CDPH

2 Likes

Thank you @loubajuk!

1 Like

From the UK but, if it helps, we use shiny (and plumber) in production (finance industry). The app linked below is mainly marketing focused but we do also have other apps which are limited to specific clients.
https://tools.hymans.co.uk/tprfasttrack/

2 Likes

New Zealand's COVID19 dashboard: https://nzcoviddashboard.esr.cri.nz/

Be aware that all data published via Shiny should be treated as "public" so don't put up anything sensitive like patient data etc.

--Russell

2 Likes

If you can, let us know how it goes.
Tableau and Shiny are such different tools so I'm really interested to hear their feedback and their perceptions of the tools.

one pretty impressive and relevant to our time: https://worldhealthorg.shinyapps.io/covid/

Thank you @jcolomb ! The WHO Shiny Dashboard is quite impressive indeed.

@lxy009 I am happy to post updated on this. At the moment, two of sticking points are data security and cost. Tableau makes "push button publishing" quite easy for enterprise applications. I guess R Studio Connect is the closest equivalent to this. But our IT team does not have much knowledge about setting up Shiny servers. So, at the moment, we are trying to look up some examples of other public Shiny dashboards.

We use shiny in production at Epicentre - Médecins sans frontières; here's one public example: https://reports.msf.net/public/covid19/

That is running on shiny server but for internal apps we use shinyproxy. It's open source, uses docker for deployment and has lots of enterprise authentication options, so maybe your IT team would be more familiar with these technologies.

Thank you. This is very cool!

In addition to the examples on the shiny gallery, Appsilon have some good examples as well. You can find their shiny demos here.

You can also check the Use of R in Official Statistics (UROS) 2020 website. :slight_smile:

At BC Stats, the Province of British Columbia's statistics agency, we are using Shiny for both data visualization and data dissemination. Here's three examples--we have some others that are not yet published.

Note that in all cases they are running on RStudio's cloud service shinyapps.io; the code is up on the BC Government GitHub site, and the data we are using for these is under various open data licenses. I have been working on getting Shiny server or RStudio Connect, which would provide a significant expansion in functionality, but I keep running up against various institutional barriers.

Data visualization

  • BC Housing Market - combines Census and administrative data, with a variety of plot types and maps

  • BC Student Outcomes - displaying results from surveys of post-secondary students after graduation

Data dissemmination

  • Population estimates - this Shiny app provides access to population estimates for a variety of geographies, age categories, etc. The Shiny app is a straight copy of an older tool we had, designed for self-serve data downloads. The next phases of development will be to incorporate some feedback we have heard from clients, including creating some data visualizations similar to what's in the housing app. (Note that there are parallel apps for household estimates and population projections.)

I'd be happy to chat further if you want more information and/or a pep talk the next time you run up against institutional barriers!

Martin

1 Like

Thanks for the update @Piranha.

Interesting that data security and cost are the sticking points since, in my opinion, those are not Tableau's strong suits. For what it's worth, I've set up both Shiny servers and Tableau in parallel at the same company. Tableau more for self-service analytics case and where we spent the time to curate the data and expose the right elements ... and where the analysis was simple and straight-forward. Shiny was used when data still required a lot of manipulation not easily or impossible to be done on Tableau and where there's modeling and analysis; things that are not appropriate for self-service.

The 3rd factor, IT not having experience with a software so not wanting to do it, is a common one. I've always been willing to get my hands dirty and be responsible for administrating and working with IT, so I haven't had as much push back in that regard.

Good luck and keep us posted.

Hi Richard, thanks for your input. Would you be able to elaborate on why security is not one of Tableau's strong points?

As for the 3rd factor - you are exactly right. The team has has specifically called out security and costs as primary hurdles. However, I suspect that lack of familiarity is probably an even bigger hurdle. They just haven't haven't verbalized that barrier clearly.

With that point in mind, I had posted another question on this community (here: Talking to "traditional" IT managers about Shiny). If you have any other resources that I can utilize, please let me know!

I would first mention that the last time I set this up (Tableau and Shiny), it was 3 years ago. It was Tableau Desktop and Tableau Online. I was implementing Shiny Server open-source edition.

Re: security

  • access and IAM
    I felt Tableaus authentication and IAM was pretty basic.
    Something that could easily be put in front of a shiny app.
    auth0 example
    I mean it's not glaringly bad, but I would have felt better in using something like Okta in front of Tableau.
  • data security and performance
    My guess is that you can't mess up the data source in Tableau, at least easily.
    But that's pretty straight-forward to do in a shiny app.
    Tableau queries are actually done pretty well, when you look at the underlying SQL.
    But at the same time, if you give you everyone access to all the data and fields, they can certainly take its toll on performance.

Re: costs

  • the nice thing about shiny is you are paying for hardware, essentially. In Tableau, you have to pay for seats, with the cheaper seats starting at 100 min viewers. I hated having to figure out how many seats we needed. I rather just worry about how our servers are scaling and getting how many ever people we wanted access.
  • One hidden cost of Tableau is the data engineering. Tableau makes it super easy to connect to a data source, almost too easy. I would recommend against connecting it to the raw data lake. You need to spend resources curating a data source: the right set of fields, fields encoded correctly, clean up any anomaly or bad data that can have adverse effects on viz ... etc. In my opinion, you need some dedicated resources to make self-service analytics work properly. In my mind, this isn't a cost usually in shiny apps because the people developing on shiny are already doing this.
  • Another hidden cost of Tableau is analysis support. Now you have to do this with a Shiny app but it is somewhat contained by what you choose to reveal on the app. In self-service analytics situation
    it felt like more people making bad inference or analysis. (Also telling people why their 1-2 statistics courses in college isn't sufficient training can be an awkward conversation)

That was longer than I wanted and it kind of takes away from the more important part - right tool for the use case. Is this really a self-service analytics use case? If I'm building something for an external client, I'm guessing it's not a self-service use case.

1 Like

Hi @lxy009. Many thanks for your wonderfully detailed response! If it is useful to anyone else following this conversation, here is some more background on why I am trying to get my company to adopt R Shiny in addition to Tableau:

Pre-cleaning/ETL:

  • The data that I am trying to analyze is very messy and complex. It requires a lot of pre-cleaning. I have already spent weeks cleaning the data so that it has a somewhat uniform structure. A colleague of mine (who is our in-house Tableau expert) showed me two things (a) how to duplicate the data-cleaning steps in Tableau and/or (b) how to visualize the pre-cleaned data in Tableau.

  • As expected, the data cleaning in Tableau involved a dizzying sequence of clicks that I am never going to remember. But I was surprised to find that even after connecting Tableau to the data pre-cleaned using R, there were a lot of customizations that required clicking specific points in a specific way. The whole process felt very clunky and fragile. The dashboard that I am building is actually quite basic. I have one data table from {DT} and a time series chart that can be edited by selecting an item from a drop down list.

Creating space for more dashboard features down the road:

  • In future, I want the users to see the relationships between variables using multi-variable linear regression. After viewing the overall model, I want to give users the ability to view individual explanatory variables in more detail. I have already done much of this work in my R projects. I am in the process of transferring some of these over to Shiny. After encountering lots of obstacles with transferring basic analysis from R to Tableau, I am afraid that porting more complex analysis will be extremely difficult.

  • At this point I am just using basic linear regression, haven't attempted any kind of fancy machine learning. I suspect that once I get to the machine learning phase, the gap between R Shiny and Tableau will get even wider.

The users:

  • For now, my analysis is being shared with colleagues. These colleagues take screenshots/downloads of the analysis and share with clients via email/phone/zoom. I want to make this more of a self-serve model. My company already does some of this self-serve via Tableau. But that work is handled by a different department. The Tableau based self-serve analysis is not as detailed as mine, so it works well for the other department.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.