Table of Contents

Interactional histogram on Rshiny and deploying app on website

There are many ways to create interactive visualizations, dashboards, and applications for business users who may not have the programming skills or interest to work in R. However, Shiny lets R developers generate interactive data visualizations for the web directly, with as much or as little GUI richness as they choose to invest. It dis-intermediates the relationship between data scientists and business users, resulting in high fidelity iterations and a timely, high-quality interactive data experience without (or with much less) web development and without the limitations or cost of proprietary BI tools.

A Shiny application consists of two parts: ui and server. UI is where we can design user interface and server is where we assign tasks according to user choices. Let say we want to generate a histogram of Salary depending on selections of Job Role, Experience and Area. In the UI file, we will call three inputs, according to Job Role, Experience and Area. Input forms could vary from date range to check box or select button. In this case, we should choose dropbox selections, so that the options for each section will be automatically updated when the data changes. After that, we call the output name and place it at the main output panel.

Improve the Communication, Integration & Automation of data flow across your Organization

Calculate your DataOps ROI

The most important thing that makes our histogram interact with any changes in the choices of users lies in the server file. We will filter data depending on users’ selection of each Job Role, Experience and Area; therefore, we will have three sub-datasets, the last of which will be used to plot histogram. For each time we filter the data, pass process through reactive{()} function, so that final data will then be iterated whenever JobRole, Experience or Area changes.

After having the data and linking input in the UI file with data from the server, we will use the filtered data to generate a histogram. Since our histogram data is of continuous value (Pay), we have to set the number of bins. There will be problems if the data observes outliers. To aggregate all outliers to the first and last bin, we use the quartile threshold. Call the output name in the server file and draw histogram with ggplot inside renderPlot({}) expression, we have finished our server file.

Here, we have completed the Shiny app that could run on a separate window and be ready to be used in a user-friendly interface. However, to deploy the app on an existing website, we have to host UI and server files on cloud with, then use < iframe> to embed the app to website code.

Liked what you read !

Please leave a Feedback

Leave a Reply

Your email address will not be published. Required fields are marked *

Join the sustainability movement

Is your carbon footprint leaving a heavy mark? Learn how to lighten it! ➡️

Register Now

Calculate Your DataOps ROI with Ease!

Simplify your decision-making process with the DataOps ROI Calculator, optimize your data management and analytics capabilities.

Calculator ROI Now!

Related articles you may would like to read

Leveraging IT staff augmentation for effective data management and data architecture
Leveraging IT Staff Augmentation for Effective Data Management and Data Architecture 
How IT Staff Augmentation services flexibility and agility to IT departments
How IT staff augmentation services offer flexibility and agility to IT departments 
Educational Empowerment with IT Staff Augmentation in EdTech Advancements
Educational Empowerment with IT Staff Augmentation in EdTech Advancements 

Know the specific resource requirement for completing a specific project with us.


Keep yourself updated with the latest updates about Cloud technology, our latest offerings, security trends and much more.


Gain insights into latest aspects of cloud productivity, security, advanced technologies and more via our Virtual events.

ISmile Technologies delivers business-specific Cloud Solutions and Managed IT Services across all major platforms maximizing your competitive advantage at an unparalleled value.

Request a Consultation