All Projects → madlogos → recharts2

madlogos / recharts2

Licence: other
An R Interface to Baidu Echart3 Library

Programming Languages

r
7636 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to recharts2

vue-echarts-map
Vue版本Echarts中国地图钻取
Stars: ✭ 113 (+264.52%)
Mutual labels:  echarts
GTD-Visualization
全球恐怖袭击数据可视化
Stars: ✭ 31 (+0%)
Mutual labels:  echarts
data-visualization
🔗 configurable data visualization
Stars: ✭ 18 (-41.94%)
Mutual labels:  echarts
go-tachart
Candlestick chart generator (with event mark and TA indicator) using go-echarts
Stars: ✭ 24 (-22.58%)
Mutual labels:  echarts
echarts-for-wechat-wepy
echarts微信小程序wepy版本封装
Stars: ✭ 29 (-6.45%)
Mutual labels:  echarts
k-line
股票、虚拟币交易k线图
Stars: ✭ 32 (+3.23%)
Mutual labels:  echarts
ngx-echarts-starter
A starter demo project for ngx-echarts
Stars: ✭ 29 (-6.45%)
Mutual labels:  echarts
EChartsAnnotation
ECharts的Java注解框架
Stars: ✭ 22 (-29.03%)
Mutual labels:  echarts
echarts-china-map
echarts 中国地图版
Stars: ✭ 81 (+161.29%)
Mutual labels:  echarts
zabbix-monitor
monitor system based on zabbix API pyzaabix grafana
Stars: ✭ 70 (+125.81%)
Mutual labels:  echarts
echarts-graph-modularity
Apache ECharts graph modularity extension for community detection
Stars: ✭ 62 (+100%)
Mutual labels:  echarts
aaocp
一个对用户行为日志进行分析的大数据项目
Stars: ✭ 53 (+70.97%)
Mutual labels:  echarts
react-visualized-platform
🐞 基于 React 的雾霾数据爬虫分析平台
Stars: ✭ 31 (+0%)
Mutual labels:  echarts
GithubProfile
Visualizing GitHub profile
Stars: ✭ 45 (+45.16%)
Mutual labels:  echarts
vue-kai-admin
学习vue-admin架构,顺便记录工作的组件
Stars: ✭ 31 (+0%)
Mutual labels:  echarts
vue-admin-work
🎉🎉🚀🚀🚀🚀vue-admin-work是一个中后台系统管理方案。使用 vue2.x 及周边全家桶工具开发而来。支持多种功能,不同角色权限🚀🚀🚀🎉🎉
Stars: ✭ 74 (+138.71%)
Mutual labels:  echarts
7-react-admin-ts
用 ts + react-hooks 实现的管理后台
Stars: ✭ 23 (-25.81%)
Mutual labels:  echarts
vue-echarts
Apache ECharts component for Vue.js.
Stars: ✭ 6,891 (+22129.03%)
Mutual labels:  echarts
charts
📊 A set of charts based on rsuite and ECharts
Stars: ✭ 65 (+109.68%)
Mutual labels:  echarts
fishing-funds
基金,大盘,股票,虚拟货币状态栏显示小应用,基于Electron开发,支持MacOS,Windows,Linux客户端,数据源来自天天基金,蚂蚁基金,爱基金,腾讯证券,新浪基金等
Stars: ✭ 424 (+1267.74%)
Mutual labels:  echarts

v 0.0.1 (under development)

本包开发宣告中止,弃坑。请大家直接从CRAN下载John Coene开发的echarts4r.


An R Interface to Baidu Echarts3

Echarts3 is an open source JavaScript library developed by Baidu Inc. for interactive charts. Compared to other popular js libraries, Echarts is more Chinese-friendly. The latest stable release of Echarts3 is 3.2.3.

This package is to facilitate R users to make use of Echarts3 library (use recharts package for Echarts2 library). A hello world example is as below:

echartr(iris, Sepal.Length, Sepal.Width, Species) %>% setTheme('macarons')

hello_world

The initial recharts package was developed by Yang Zhou and Taiyun Wei. The current branch was forked from Yihui Xie.

Installation

if (!require(devtools)) library(devtools)
devtools::install_github('madlogos/recharts')

As the package is under development, you may come across errors when requiring the package directly from Github. You can alternatively download the codes from Github and compile the codes using RStudio.

Documentation

Development

The package was developed using RStudio under Ubuntu 16.

Design

The Echarts object is an S3 list, comprising of the following elements:

(1) Timeline contained

- timeline
- options
    - series
        - list 1
        - ...
    - widgets (title, legend, toolbox, dataRange, dataZoom, roamController)
    - ...

(2) No timeline contained

- series
    - list 1
    - ...
- widgets (title, legend, toolbox, dataRange, dataZoom, roamController)
- ...

The basic design is to configure an S3 object widget by widget and concatenate them by pipe operator (%>%). It is inspired by ggplot2.

The core function is echartr, which accepts basic settings of data source, variables, chart types and then constructs the framework of the S3 object (options part of the Echarts DOM object).

Then echartr parses the data source and calls series processing functions (series_scatter, series_bar, series_line, ...) to build the series part of the options object.

Then you can tune the series using the low-level function setSeries.

Then you can add more objects (addMarkLine, addMarkPoint, addHeatmap, addNameMap, ...) to the echarts object.

Then you can configure other widgets in the echarts object created by echartr to create/modify the widgets. E.g, setTitle, setLegend, setToolbox, setDataZoom, setDataRange, setTimeline, setRoam, axes such as setAxis, setPolar and aesthetics such as setGrid, setSymbols, setTooltip, setTheme.

Finally, you can use relocWidgetfunctions to relocate/resize the echarts object step further.

Status

Achievements

Current version is 0.0.6.

  • Major part of core function echartr
  • Major part of widget functions setTitle, setLegend, setDataRange, setDataZoom, setToolbox, setTimeline, setRoam
  • Additional element functions addMarkLine, addMarkPoint, addNameMap, addHeatmap, addGeoCoord
  • Major part of Axis/grid functions setAxis, setPolar, setGrid
  • Major part of aesthetic function relocWidget, setTheme, setSymbols, setTooltip
  • Series processing fuenctions series_scatter, series_bar, series_line, series_k, series_pie, series_funnel, series_radar, series_map, series_force, series_chord, series_gauge, series_wordCloud, series_tree, series_treemap, series_venn, series_riverEvent, series_heatmap

Supported chart types

  1. Mono-coordinate System
    1. Cartesian Coordinate System
      1. Scatter
        1. scatter|bubble
      2. Bar
        1. bar|hbar
        2. vbar|column
        3. histogram|hist
      3. Line
        1. line
        2. curve
        3. area
        4. wave
      4. K
        1. k|candlestick
      5. eventRiver
        1. eventRiver
    2. Others
      1. Force
      2. Chord
      3. Word Cloud
      4. Venn Chart
      5. Heatmap
  2. Multi-coordinate System
    1. Polar Coordinate System
      1. Pie
        1. pie
        2. ring
        3. Rose
      2. Funnel
        1. Funnel
        2. Pyramid
      3. Radar Chart
      4. Gauge Chart
    2. Others
      1. Map
      2. Tree Chart
      3. Treemap

To-do

  • Tool functions to configure series precisely
  • Bug fix
  • Optimize algorithms

License

Under the terms of MIT + file license.


百度Echarts3的R语言接口

Echarts3是百度发布的一个开源JavaScript库,用于创建交互图。与其他流行的Javascript库相比,Echarts对中文更友好。Echarts家族的最新版本为3.2.3。

该加载包是为了便利R用户使用Echarts3库 (Echarts2库的话,用recharts包). 下面是一个hello world案例:

echartr(iris, Sepal.Length, Sepal.Width, Species) %>% setTheme('macarons')

hello_world

recharts起先由Yang Zhou和Taiyun Wei开发。当前分支fork自Yihui Xie

安装

if (!require(devtools)) library(devtools)
devtools::install_github('madlogos/recharts')

此包仍在开发中,从Github直接安装可能遇到错误。可以从Github下载源代码包,然后在RStudio里编译。

文档

开发

该包在Ubuntu 16下用RStudio开发。

设计

Echarts对象其实是一个S3列表,包括下列元素:

(1) Timeline contained

- timeline
- options
    - series
        - list 1
        - ...
    - widgets (title, legend, toolbox, dataRange, dataZoom, roamController)
    - ...

(2) No timeline contained

- series
    - list 1
    - ...
- widgets (title, legend, toolbox, dataRange, dataZoom, roamController)
- ...

基本设计是逐个控件地配置S3对象,并用%>%串联起来。这一思路受到了ggplot2启发。

核心函数是echartr,它接受源数据、变量、图类型等基本设置,然后构建出一个基础的S3对象框架(Echarts DOM对象的options部分)。

然后echartr解析源数据并调用数据系列处理函数(series_scatter, series_bar, series_line, ...)构建出options对象中的series部分。

接下来你就可以调用低级函数setSeries微调series了。

然后可以往这个Echarts对象中添加其他控件(addMarkLine, addMarkPoint, addHeatmap, addNameMap, ...)。

在然后可以在这个Echarts对象中配置其他控件的各项参数,比如setTitle, setLegend, setToolbox, setDataZoom, setDataRange, setTimeline, setRoam, 或者坐标轴,如setAxis, setPolar 以及美工,比如setGrid, setSymbols, setTooltip, setTheme.

最后,可以用relocWidget函数调整控件位置/尺寸。

状态

成果

当前版本0.0.6.

  • 核心函数echartr的主体
  • 控件函数setTitle, setLegend, setDataRange, setDataZoom, setToolbox, setTimeline, setRoam的主体
  • 额外控件函数addMarkLine, addMarkPoint, addNameMap, addHeatmap, addGeoCoord
  • 坐标轴/绘图区函数setAxis, setPolar, setGrid
  • 美工函数relocWidget, setTheme, setSymbols, setTooltip
  • 数据系列处理函数series_scatter, series_bar, series_line, series_k, series_pie, series_funnel, series_radar, series_map, series_force, series_chord, series_gauge, series_wordCloud, series_tree, series_treemap, series_venn, series_riverEvent, series_heatmap

支持的图类型

  1. 单坐标系
    1. 直角坐标系
      1. 散点图
        1. scatter|bubble
      2. 柱图
        1. bar|hbar
        2. vbar|column
        3. histogram|hist
      3. 线图
        1. line
        2. curve
        3. area
        4. wave
      4. K线图
        1. k|candlestick
      5. 事件河流图
        1. eventRiver
    2. 其他
      1. Force
      2. Chord
      3. Word Cloud
      4. Venn Chart
      5. Heatmap
  2. 多坐标系
    1. 极坐标系
      1. 饼图
        1. pie
        2. ring
        3. Rose
      2. 漏斗图
        1. Funnel
        2. Pyramid
      3. Radar Chart
      4. Gauge Chart
    2. 其他
      1. Map
      2. Tree Chart
      3. Treemap

下一步

  • 更多工具函数,以便精确设置数据系列
  • 修补bug
  • 优化算法

许可

MIT + file license

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].