echarter: Echarts的R語言接口

echarter

ECharts 4的R語言接口實現, 詳細說明文檔和案例請查看echarterhtml

簡介

我以前一直使用highcharter作交互式數據可視化,由於工做的須要開始使用echarts,期間主要使用過兩個echarts包,cosname/rechartsJohnCoene/echarts4r。由於使用highcharter比較久,也習慣了它的的實現方式,以及highcharts豐富的官方文檔和社區幫助。因此我按照highcharter的方式,嘗試開發了echarter。取名爲echarter,也是爲了向highcharter致敬。而且也參考了cosname/rechartsJohnCoene/echarts4r的實現方式。git

這是我第一次開發完整的package,不足之處歡迎你們指正。github

安裝

echarter包的源代碼在分享在Github,jeevanyue/echarter,可經過下列方式安裝。json

devtools::install_github("jeevanyue/echarter")

基礎組件

支持官方配置項的全部組件,詳細能夠查看官方文檔option案例api

座標系組件

數據組件ec_dataset

支持的圖表類型: line, bar, scatter, effectScatter, boxplot, candlestick, pictorialBar, custom

暫時只支持data.frame和json兩種數據格式。

若是是data.frame,會經過jsonlite::toJSON(setNames(data, NULL))轉爲json,並默認dimensions = colnames(data)。若是是json,會直接取用該數據,並默認dimensions = NULL

經過ec_dataset導入數據,須要提早對數據進行預處理,後續再對這個組件進行拓展。

數據組件ec_add_series

目前支持的數據類型有,data.frame, matrix, numeric, character, tx, forecast.

添加數據的方式我根據兩個屬性進行判斷,座標系和圖表類型。

有座標系的圖表,包括line、bar、scatter、effectScatter、boxplot、candlestick、pictorialBar、lines、heatmap、themeRiver,數據添加方式的分類:

無座標系的圖表,包括pie、map、funnel、guage、tree、treemap、sunburst、sankey、graph,數據添加方式的分類:

圖表類型

支持除了GL的全部圖表類型,包括水球圖liquidfill和字符雲wordcloud,詳見基本圖表高級圖表

echarter

支持echarter來快速繪圖。

主題theme

能夠經過下列四種方式設置主題,詳見echarter.theme

  • 支持自帶的theme: dark, infographic, macarons, roma, shine, vintage,echart(theme = 'dark')
  • 導入echarts theme 構建工具的js主題文件,echart(theme = '**.js')
  • 導入ec_theme構建的主題,echart(theme = thm)導入
  • 修改全局主題getOption("echarter.option"),該方式目前尚未跟全部圖表類型匹配,建議採用以上三種方式

shiny案例

shiny經過renderEchartsechartsOutput實現。

  • 實時數據,codedemo
  • 鼠標事件和觸發圖表行爲,及圖表聯動實例,codedemo
  • toolbox拓展,codedemo

其餘echarts包

相關文章
相關標籤/搜索