项目地址:http://git.oschina.net/free/ECharts
这是一个针对 ECharts 2.0 版本的Java类库,实现了所有ECharts中的Json结构对应的Java对象,并且可以很方便的创建Option
本项目是一个供Java开发使用的ECharts的开发包,主要目的是方便在Java中构造ECharts中可能用到的全部数据结构,如完整的结构 Option。Option中的数据Series,包含Bar-柱状图,Line-折线图,Pie-饼图,Chord-和弦图等,支持ECharts中的 所有图表。支持所有的Style类,如AreaStyle,ChordStyle,ItemStyle,LineStyle,LinkStyle等等。支 持多种Data数据类型,一个通用的Data数据,以及PieData,MapData,ScatterData,KData等针对性的数据结构。
你可以使用本项目直接构造一个Option对象,转换为JSON后直接用js设置myChart.setOption(option),或者你也可以在前段构造基本的Option对象,然后使用本项目来构造其中需要的任意某部分的数据,如使用Series支持的图表类型创建Series数据。
项目支持
图表类型
-
Line - 折线(面积)图
-
Bar - 柱状(条形)图
-
Scatter - 散点(气泡)图
-
K - K线图
-
Pie - 饼(圆环)图
-
Radar - 雷达(面积)图
-
Chord - 和弦图
-
Force - 力导向布局图
-
Map - 地图
-
Gauge - 仪表盘
-
Funnel - 漏斗图
-
Island - 孤岛图(官方未提供,这里只有数据Island对象)
ECharts组件
-
Axis - 坐标轴
-
Grid - 网格
-
Title - 标题
-
Tooltip - 提示
-
Legend - 图例
-
DataZoom - 数据区域缩放
-
DataRange - 值域漫游
-
Toolbox - 工具箱
-
Timeline - 时间线
简单的例子:
@Test
public void test() {
//地址:http://echarts.baidu.com/doc/example/line5.html
EnhancedOption option = new EnhancedOption();
option.legend("高度(km)与气温(°C)变化关系");
option.toolbox().show(true).feature(
Tool.mark,
Tool.dataView,
new MagicType(Magic.line, Magic.bar),
Tool.restore,
Tool.saveAsImage);
option.calculable(true);
option.tooltip().trigger(Trigger.axis).formatter("Temperature : <br/>{b}km : {c}°C");
ValueAxis valueAxis = new ValueAxis();
valueAxis.axisLabel().formatter("{value} °C");
option.xAxis(valueAxis);
CategoryAxis categoryAxis = new CategoryAxis();
categoryAxis.axisLine().onZero(false);
categoryAxis.axisLabel().formatter("{value} km");
categoryAxis.boundaryGap(false);
categoryAxis.data(0, 10, 20, 30, 40, 50, 60, 70, 80);
option.yAxis(categoryAxis);
Line line = new Line();
line.smooth(true).name("高度(km)与气温(°C)变化关系")
.data(15, -50, -56.5, -46.5, -22.1, -2.5, -27.7, -55.7, -76.5)
.itemStyle().normal().lineStyle().shadowColor("rgba(0,0,0,0.4)");
option.series(line);
option.exportToHtml("line5.html");
option.view();
}
对应的ECharts例子地址: http://echarts.baidu.com/doc/example/line5.html
欢迎各位使用ECharts的朋友使用,发现问题后,可以从下面地址反馈: