Graphics in both Tableau and Shiny have their pluses and minuses. Tableau is good for drag and drop graphics that is easy to change the types of graphs given the situation with little to no coding. R/Shiny graphics are completely customizable from 3D graphics to violin plots, which is a boxplot that incorporates a probability density function. Also, with Shiny you can get summaries of the data and perform many other advanced statistical methods; beware of running analyses in Shiny without checking the proper diagnostic tests related to the data at hand (this is my statistics background speaking).
Where Tableau falls short in some places an integration with R Shiny allows Tableau dashboards to meet and exceed you or your clients expectations.
A big plus for R and Shiny is that it has a very large user base and a great support community with some of the brightest statisticians in the world contributing to, so finding community code and your imagination there are endless possibilities of what you can create. Since Shiny is based off a server and there is a URL associated with a Shiny app you can easily incorporate Shiny apps in your Tableau dashboards.
The first thing you need to do is create or add to an existing Tableau dashboard and select “Web Page” on the left panel of Tableau. Then insert your Shiny App URL:
By following these couple of steps the incorporation of Shiny will impress anyone that uses the Tableau dashboard you created. Another nice thing is that if you make changes to your Shiny app you will not have to update anything on the Tableau side because the changes will be automatically reflected when you open the dashboard.