ECharts,是一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表.

例如,现在需要比较2个同学的各学期绩点信息,使用echarts即可生成以2个同学每个学期的绩点为数据的折线图,直观的显示2个同学各自的成绩起落情况并加以比较.

代码如下:

<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="width:900px;height:300px"></div>
<!-- ECharts单文件引入 -->
<script src="http://echarts.baidu.com/build/dist/echarts.js">
</script> <script type="text/javascript">
        // 路径配置
        
require.config({
            paths: {
                echarts: 'http://echarts.baidu.com/build/dist'
            
}
        });
                
                  // 使用
        
require(
            [
                'echarts',
                'echarts/chart/line'
            ],
            function (ec) {
                // 基于准备好的dom,初始化echarts图表
                
var myChart = ec.init(document.getElementById('main'));
                  
              option = {
    title : {
        text: '两位同学在大学四年内成绩的比较',
        subtext: ''
    
},
    tooltip : {
        trigger: 'axis'
    
},
    legend: {
        data:['同学A','同学B']
    },
    toolbox: {
        show : true,
        feature : {
            mark : {show: true},
            dataView : {show: true, readOnly: false},
            magicType : {show: true, type: ['line', 'bar']},
            restore : {show: true},
            saveAsImage : {show: true}
        }
    },
    calculable : true,
    xAxis : [
        {
            type : 'category',
            boundaryGap : false,
            data : ['大一上','大一下','大二上','大二下','大三上','大三下','大四上','大四下']
        }
    ],
    yAxis : [
        {
            type : 'value',
            axisLabel : {
                formatter: '{value}'
            
}
        }
    ],
    series : [
        {
            name:'同学A',
            type:'line',
            data:[3.2, 3.2, 3.8, 4.0, 3.7, 3.3, 3.7,3.2],
            markPoint : {
                data : [
                    {type : 'max', name: '最大值'},
                    {type : 'min', name: '最小值'}
                ]
            },
            markLine : {
                data : [
                    {type : 'average', name: '平均值'}
                ]
            }
        },
        {
            name:'同学B',
            type:'line',
            data:[3.7, 4.0, 3.2, 3.7, 3.2, 3.9, 3.9,4.2],
            markPoint : {
                data : [
                    {type : 'max', name: '最大值'},
                    {type : 'min', name: '最小值'}
                ]
            },
            markLine : {
                data : [
                    {type : 'average', name: '平均值'}
                ]
            }
        },
    ]
};
                    
              
                    
        
                // 为echarts对象加载数据
                
myChart.setOption(option);
            }
        );

其中,各类图表的参数大致类似,比如title即为图表的标题,xAxis即为x轴上个点的信息,在该实例中即为大一上,大一下等信息,type即为图表的种类,data即每一个端点的纵轴数值,该实例中直接给出了数据值,在实际应用中应通过ajax技术异步获取后端数据即时绘制图标.

在用户浏览器上的显示:

 

在各类信息系统中,信息展示是不可缺少的环节,而要展示信息,图表应该就是最为直观的方式了.Echarts是一款新生代的图表绘制技术,它最大的优点就是简单直接,它提供的折线图柱状图散点图饼图K线图,用于统计的盒形图等完全能满足大部分系统的需求,在此基础上,它还有极大的平台兼容性与语言兼容性,而使用构造软件开发的话,将非常轻量化,如果只需要绘制少量的图表,用格式相对固定的代码编写也是不错的方式.总而言之,echarts是一款简单而实用的技术,在未来的系统前端构筑中echarts是不可或缺的信息展示工具.