echarty
Details
Description
echarty provides a lean interface between R and Javascript library ECharts. We encourage users to follow the original ECharts API documentation to construct charts with echarty. Main command ec.init can set multiple native ECharts options to build a chart. The benefits - learn a very limited set of commands, and enjoy the full functionality of ECharts.
Package Conventions
pipe-friendly - supports both %>% and |> commands have three prefixes to help with auto-completion:
ec. for general functions, like ec.init
ecs. for Shiny functions, like ecs.output
ecr. for rendering functions, like ecr.band
Events
For event handling in Shiny see sample code in
eshiny.R,
run as demo(eshiny)
.
Echarty has three built-in event callbacks - click, mouseover,
mouseout. All other ECharts
events could be
initialized through p$x$capture
. Another option is to use p$x$on
with JavaScript handlers, see code in
examples.
Widget x parameters
These are htmlwidget and ECharts initialization parameters supported by echarty. There are code samples for most of them in examples:
capture = event name(s), to monitor events, usually in Shiny
on = define JavaScript code for event handling, see ECharts
registerMap = define a map from a geoJSON file, see ECharts
group = group-name of a chart, see ECharts
connect = command to connect charts with same group-name, see ECharts
locale = EN(default) or ZH, set from locale parameter of ec.init, see ECharts.
renderer = canvas(default) or svg, set from renderer in ec.init, see ECharts.
jcode = custom JavaScript code to execute, set from js parameter of ec.init
R vs Javascript numbering
R language counting starts from 1. Javascript (JS) counting starts from 0. ec.init supports R-counting of indexes (ex. encode) and dimension (ex. visualMap). ec.upd requires indexes and dimensions to be set with JS-counting.
Javascript built-in functions
To allow access to charts from JS. ec_chart(id) - get the chart object by id (former get_e_charts) ec_option(id) - get the chart’s option object by id (former get_e_charts_opt) Parameter ‘id’ could be the internal variable echwid, or the value set through ec.init parameter elementId. See demo code in examples
Code examples
Here is the complete list of sample code locations:
website gallery
Shiny code is in eshiny.R, run with
demo(eshiny)
demos on RPubs
searchable gists
answers to Github issues
code in Github tests
command examples, like in ?ec.init
Global Options
Options are set with R command options. Echarty uses the following options:
echarty.theme = name of theme file, without extension, from folder
/inst/themes
echarty.font = font family name
echarty.urlTiles = tiles URL template for leaflet maps