Explore and Visualize Your Data Interactively

A 'shiny' gadget to create 'ggplot2' figures interactively with drag-and-drop to map your variables to different aesthetics. You can quickly visualize your data accordingly to their type, export in various formats, and retrieve the code to reproduce the plot.

Project Status: Active – The project has reached a stable, usable state and is being actively developed. version Travis-CI Build Status

This addin allows you to interactively explore your data by visualizing it with the ggplot2 package. It allows you to draw bar graphs, curves, scatter plots, histograms, then export the graph or retrieve the code generating the graph.

If you find bugs, please open an issue


Install from CRAN with :

# From CRAN

Or install dev version from GitHub :

# with remotes
# or with install-github.me service (based on remotes)
# or with devtools:

Then launch the addin via the RStudio menu, if you don't have data.frame in your environment, datasets in ggplot2 are used.

ggplot2 builder addin

Launch addin via RStudio menu or with:


First step is to choose a data.frame:

Or you can use a dataset directly with:

esquisse::esquisser(data = iris)

After that, you can drag and drop variables to create a plot:

Four sub-menus are available under the chart to modify some parameters:


Set chart's labs with this menu:

Plot options

Choose color, geom parameters and theme:

Filter data

⚠️ Experimental !

Filter your data:

Code & export

Export your plot and retrieve the code to reproduce it:

Display mode

You can change where addin is displayed by setting option esquisse.display.mode, possibilities are :

  • dialog (default) : use RStudio dialog window
  • pane : RStudio's Viewer
  • browser : default browser

For example, launch in browser :

options("esquisse.display.mode" = "browser")


esquisse 0.1.7

  • Play/Pause button to stop reactivity when creating a plot (prevent plot to update each time you make a change)
  • Support for palette from viridisLite

esquisse 0.1.6

  • Support for sf objects.
  • Use esquisse as a shiny module.
  • Facets support thanks to @itcarroll (#30)
  • New import data modules
  • Fix a bug when launching addin in RStudio #25

esquisse 0.1.5

  • Module to coerce a variable to a different type.
  • Scroll when data have a lot of variables.
  • Prevent filter for discrete variables with over 100 unique elements.

esquisse 0.1.0

  • Addin to make ggplot.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.2 by Victor Perrier, 4 months ago


Report a bug at https://github.com/dreamRs/esquisse/issues

Browse source code at https://github.com/cran/esquisse

Authors: Fanny Meyer [aut] , Victor Perrier [aut, cre] , Ian Carroll [ctb] (Faceting support) , Xiangnan Dang [ctb] (Facets rows and cols , X/Y limits) , Nicolas Bevacqua [cph] (author of dragula JavaScript library) , Daybrush (Younkue Choi) [cph] (author of moveable JavaScript library) , Zeno Rocha [cph] (author of clipboard JavaScript library)

Documentation:   PDF Manual  

GPL-3 | file LICENSE license

Imports datamods, rstudioapi, shiny, htmltools, jsonlite, shinyWidgets, ggplot2, scales, rlang, grDevices

Suggests officer, rvg, rio, testthat, knitr, rmarkdown, ggthemes, hrbrthemes

Imported by shinyrecipes.

See at CRAN