Radiant is a platform-independent browser-based interface for business analytics in R, based on the Shiny package. Developed by Vincent Nijs. Please use the issue tracker on GitHub to suggest enhancements or report problems: https://github.com/vnijs/radiant/issues. For other questions and comments please use radiant@rady.ucsd.edu.
- Explore: Quickly and easily summarize, visualize, and analyze your data
- Cross-platform: It runs in a browser on Windows, Mac, and Linux
- Reproducible: Recreate results at any time and share work with others as a state file or an Rmarkdown report
- Programming: Integrate Radiant's analysis functions into your own R-code
- Context: Data and examples focus on business applications
Radiant is interactive. Results update immediately when inputs are changed (i.e., no separate dialog boxes). This greatly facilitates exploration and understanding of the data.
Radiant works on Windows, Mac, or Linux. It can run without an Internet connection and no data will leave your computer. You can also run the app as a web application on a server.
Simply saving output is not enough. You need the ability to recreate results for the same data and/or when new data become available. Moreover, others may want to review your analysis and results. Save and load the state of the application to continue your work at a later time or on another computer. Share state files with others and create reproducible reports using Rmarkdown. See also the section on Saving and loading state
below
If you are using Radiant on a server you can even share the url (include the SSUID) with others so they can see what you are working on. Thanks for this feature go to Joe Cheng.
Although Radiant's web-interface can handle quite a few data and analysis tasks, at times you may prefer to write your own code. Radiant provides a bridge to programming in R(studio) by exporting the functions used for analysis. For more information about programming with Radiant see the programming page on the documentation site.
Radiant focuses on business data and decisions. It offers tools, examples, and documentation relevant for that context, effectively reducing the business analytics learning curve.
- Required: R version 3.2 or later
- Required: A modern browser (e.g., Chrome or Safari). Internet Explorer (version 11 or higher) should work as well
- Recommended: Rstudio
Radiant is available on CRAN. To install the latest version with complete documentation for off-line access open R(studio) and copy-and-paste the command below:
install.packages("devtools")
install.packages(c("lme4", "mnormt", "MathJaxR", "rpivotTable", "shinyAce"), repos = "http://vnijs.github.io/radiant_miniCRAN/")
devtools::install_github('movisens/eXperienceSampling-Analytics')
If you want to update packages (e.g., after upgrading R) use:
update.packages(checkBuilt = TRUE, ask = FALSE, type = "binary", repos = "http://vnijs.github.io/radiant_miniCRAN/")
Once all packages are installed (updated) use the commands below to launch the app (use either "xs", "base", "quant", or "marketing"):
library(radiant)
radiant()
See also the Installing Radiant
video:
You can create a launcher on your Desktop to start Radiant by typing launcher("marketing")
in the R-console and pressing return. A file called radiant.bat
(windows) or radiant.command
(mac) will be created that you can double-click to start Radiant in your default browser.
When Radiant starts you will see data on diamond prices. To close the application click on Quit
in the Navigation bar and then click the Quit
button on the left of the screen. The Radiant process will stop and the browser window will close (or gray-out).
Documentation and tutorials are available at http://vnijs.github.io/radiant/ and in the Radiant web interface (the ?
icons and the Help
menu).
Want some help getting started? Watch the tutorials on the documentation site
Please use the GitHub issue tracker at github.com/vnijs/radiant/issues if you have any problems with Radiant.
Not ready to install Radiant on your computer? Try it online at the links below:
You can run Radiant on a (linux) server. See links above as evidence. There are also (slightly older) instances you can access that will not affect my personal usage of shinyapps.io:
gallery.shinyapps.io/marketing
To run your own server instance copy/fork the repo from github and deploy to shinyapps.io as usual. Shinyapps.io may complain about paths but you shouldn’t have any trouble if you know how to deploy to shinyapps.io. You can also host Radiant using shiny-server. Just point shiny-server to the directory in inst/ you want to use. As a courtesy, please let me know if you intend to use on a server.
To save your analyses save the state of the app to a file (Data > Manage). You can open this state file at a later time or on another computer to continue where you left off. You can also share the file with others that may want to replicate your analyses. As an example, load the state_file RadiantState.rda
in the examples
folder. Go to Data > View
, Data > Visualize
to see some of the settings. There is also a report in R > Report
that was created using the Radiant interface. The html file RadiantState.html
contains the output.
A related feature in Radiant is that state is maintained if you accidentally navigate to another page, close (and reopen) the browser, and/or hit refresh. Use Quit > Reset to return to a clean/new state.
Loading and saving state also works with Rstudio. If you start Radiant from Rstudio and use Quit > Quit to stop the app, lists called r_data
and r_state
will be put into Rstudio's global workspace. If you start radiant again using radiant()
it will use these lists to restore state. This can be convenient if you want to make changes to a data file in Rstudio and load it back into Radiant. Also, if you load a state file directly into Rstudio it will be used when you start Radiant to recreate a previous state.
Technical note: The way loading state works in Radiant is as follows: When an input is initialized in a Shiny app you set a default value in the call to, for example, numericInput. In Radiant, when a state file has been loaded and an input is initialized it looks to see if there is a value for an input of that name in a list called r_state
. If there is, this value is used. The r_state
list is created when saving state using reactiveValuesToList(input)
. An example of a call to numericInput is given below where the state_init
function from radiant.R
is used to check if a value from r_state
can be used. sm_args$comp_value
is the default value specified in the single_mean
function call.
numericInput("sm_comp_value", "Comparison value:", state_init('sm_comp_value',sm_args$comp_value))
The source code is available on GitHub at https://github.com/vnijs/radiant. Three (related) apps are included in the inst/ directory. Base
, offers data loading, saving, viewing, visualizing, merging, and transforming tools. The quant
app sources the code from base and extends it. This app is used in the Quantitative Analysis class at the Rady School of Management (UCSD). Finally, the marketing
app sources the code from base
and quant
and extends it with additional tools. The quant
app focuses on (basic) quantitative analysis (e.g., comparing means, regression, etc.). The marketing
app focuses on marketing analytics by adding clustering, principle component analysis, conjoint analysis, etc. This app is used in the Research for Marketing Decisions class at Rady (UCSD).
Radiant is licensed under the AGPLv3. The documentation and videos on this site and the radiant help files are licensed under the creative commons attribution, non-commercial, share-alike license CC-NC-SA.
As a summary, the AGPLv3 license requires, attribution, including copyright and license information in copies of the software, stating changes if the code is modified, and disclosure of all source code. Details are in the COPYING file.
If you are interested in using Radiant please email me at radiant@rady.ucsd.edu