项目中需要实现数据可视化,在前辈的推荐之下,最终选取了echarts来实现,在此关于echarts的使用进行总结,最终代码分享至我的github

关于echarts

echarts是百度推出的,使用JavaScript实现的开源可视化库,可以提供直观、可定制化的数据可视化图表,包括折线图、柱状图、散点图、地图和饼图等,点击跳转主页

使用

需求

使用之前先谈需求:使用echarts的话,需求基本上都是为了实现数据可视化,那么数据可视化牵扯到一个怎么展示的问题,就echarts功能而言,展示将通过可视化图表进行,也就是,这里的需求可归为将某数据使用echarts以图表(假定为柱状图)的形式呈现。

实现

一般情况,我会直接打开echart官方实例, 选取相应的实例,我们以最简单的折线图为例。可以看到对应的JS代码为:

option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line'
}]
};

那么,这里的各种变量分别代表的是什么含义呢?当然可以在此修改部分数据,查看折线图的变化,echarts图形化的呈现是通过setOption配置方法来实现的,点击详情,这里对各种配置做出详尽的介绍。

简单实例

那么在日常开发环境中如何实现呢?

首先,创建first.html文件,并编写:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>echarts使用</title>
<link rel="stylesheet" href="css/style.css">
<script src="js/echarts.min.js"></script>
</head>
<body>
<div class="content">
<div class="title">
echarts使用案例
</div>
<div class="chart">
<div id="firstchart">
</div>
</div>
</div> <script type="text/javascript">
var myChart = echarts.init(document.getElementById('firstchart'));
var option = {
title: {
text: '一周温度变化',
left: 'center',
top: '1%',
textStyle: {
color: 'white',
fontSize:16,
}
},
xAxis: {
type: 'category',
data: ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天'],
axisTick: {
alignWithLabel: true
},
axisLine:{
lineStyle: {
color:'white',
}
},
}, yAxis: {
type: 'value',
axisTick: {
alignWithLabel: true
},
axisLine:{
lineStyle: {
color:'white',
}
},
},
series: [{
data: [11, 12, 15, 5, 8, 14, 9],
type: 'line'
}]
}; myChart.setOption(option);
</script>
</body>
</html>

编写对应的css样式文件,打开浏览器就可看到对应的折线图。

定制

在平时的使用中,其它需求势必存在,而echarts本身也提供了这种定制化配置。下面关于一些常见需求举例说明:

添加图注

就上述折线图而言,气温变化一般可分为最高温度变化和最低温度变化,也就意味着会有两条折线。为了更直观表现,这里可使用图注来说明,在配置项中legend属性:

legend:{
right:0,
top:3,
textStyle:{
fontSize:12,
color:'#FFF',
},
data:['最高温度变化']
},

并设置了图注属性。

将坐标名旋转

由于图标可占用的空间有限,加之坐标名字符较长,就导致坐标名显示不全的情况,可以将做表明改为斜体展示(旋转角度),通过在xAxis中添加axisLabel属性来实现:

xAxis : [
{
axisLabel:{
interval:0,
rotate:45,//倾斜度 -90 至 90 默认为0
},
}
]

设置坐标网格背景

为了界面的美观,可以在图表中绘制网格,并设置网格背景。首先,在xAxis下添加:

splitLine:{
show:true,
lineStyle:{
color: 'white',
width:1,
type: 'solid'
}
},

这样,绘制了网格,然后,在yAxis中添加:

splitArea:{
show:true,
areaStyle:{
color:['#6a6f71', '#5b6062'],
},
},

即可实现网格背景,如下图所示:

以上。

本文将持续更新。

echarts使用总结的更多相关文章

  1. 一起来玩echarts系列(一)------箱线图的分析与绘制

    一.箱线图 Box-plot 箱线图一般被用作显示数据分散情况.具体是计算一组数据的中位数.25%分位数.75%分位数.上边界.下边界,来将数据从大到小排列,直观展示数据整体的分布情况. 大部分正常数 ...

  2. Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&&两个echarts详细教程(柱状图,南丁格尔图)

    Webstorm+Webpack+echarts   ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(67)-MVC与ECharts

    系列目录 ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Fire ...

  4. echarts+php+mysql 绘图实例

    最近在学习php+mysql,因为之前画图表都是直接在echart的实例demo中修改数据,便想着两相结合练习一下,通过ajax调用后台数据画图表. 我使用的是echart3,相比较第二版,echar ...

  5. 数据图表插件Echarts(一)

    一.引言 最近做一个智慧城市项目,项目中需要图表和报表进行数据分析,从网上找了很多,最后找到了百度开放的echarts,一个很强大的插件. 二.介绍 ECharts,缩写来自Enterprise Ch ...

  6. ECharts数据图表系统? 5分钟上手!

    目录: 前言 简介 方法一:模块化单文件引入(推荐) 方法二:标签式单文件引入 [前言] 最近在捣鼓各种插件各种框架,发现这个ECharts还是比较不错的,文档也挺全的,还是中文的,给大家推荐一下. ...

  7. knockout+echarts实现图表展示

    一.需要学习的知识 knockout, require, director, echarts, jquery.简单的入一下门,网上的资料很多,最直接就是进官网校习. 二.效果展示 三.require的 ...

  8. ECharts 初识(基于MVC+jQuery+Angularjs实现的Demo)

    一.背景:      我们这行做web开发的,很多时候都需要做数据统计报表,现在我所使用的是来自百度团队的ECharts.官方网址:http://echarts.baidu.com/      我们知 ...

  9. Ionic2系列——在Ionic2中使用ECharts

    在群里看到有人问怎么在Ionic2中集成ECharts来显示图表.当时答应说写个blog,简单写下步骤. 在TypeScript中如果要使用第三方库,必须要有d.ts,也就是定义文件,没有这个文件的话 ...

  10. ECharts的简单使用过程

    网页中经常要使用图表,以前使用的是highcharts插件,现在发现echarts使用起来和highcharts差不多,但是个人感觉echarts更酷炫,以下是echarts的使用过程,其实highc ...

随机推荐

  1. Benchmark Test On Android Devices

    一.Android设备上的Benckmark测试概述 同PC相比,在Android设备上的性能测试还没有一个公认的标准.也没有PC上那么多的测试程序集.但我们可以通过一些工具所得到的信息更好的了解设备 ...

  2. Fiddler中设置断点修改返回结果Response

    测试有时会遇到需要测试返回不同的数据前端展示出来会如何?如果去数据库中的数据会比较麻烦.这样我们可以通过fiddler设置断点来修改返回的数据实现测试不同的数据展示. 1.设置断点 (1)点击菜单栏按 ...

  3. Ubuntu16.04 IDE: 用Vim逐步打造一个IDE

    目前打造完成的IDE主要有: terminator+Bundle+NERDtree+YCF(youcompleteme)+UltiSnips+新创建文件自动补充注释和作者,版权信息等 1,当任务比较多 ...

  4. pyspark进行词频统计并返回topN

    Part I:词频统计并返回topN 统计的文本数据: what do you do how do you do how do you do how are you from operator imp ...

  5. vue2.0 页面A跳转到页面B,B页面停留在A页面的滚动位置的解决方法

    如果页面A沿Y轴滚动一段距离,然后跳转到页面B: 在进入B页面时,B页面已经滚到页面A的距离,返回页面A,发现A还在之前的滚动位置: 这样体验就很不好,所以我们要进行一些处理: 我的方法是:在路由守卫 ...

  6. 基于vue2+vuex+vue-router+sass+webpack的网易云音乐

    [本博客为原创:http://www.cnblogs.com/HeavenBin/]  前言: 这段时间写的一个项目,供给大家互相学习,有什么疑问可以issues我. 源码地址:https://git ...

  7. PHP中域名绑定

    1.如果是集成环境,比如phpstudy则可以直接在工具中点击其他选项菜单->站点域名管理填好对应的域名和站点目录后点击新增,然后点击保存设置并生成配置文件,然后再打开hosts文件,增加对应的 ...

  8. React Native学习(一)——搭建开发环境

    第一次接触React Native,首先搭建环境,过程还算顺利,不过也遇到了些问题,这里简单记录下来.中文官网(http://reactnative.cn/docs/0.47/getting-star ...

  9. python写的一个集合

    起因:原本打算用python写一个抢火车票的脚本.在那 期间遇见各种浏览器驱动失败的节奏....打算先缓一下 然后就去写集合了. 0x01 源码: # -*- coding:'utf-8' -*- # ...

  10. JavaWeb(二)cookie与session的应用

    前言 前面讲了一堆虚的东西,所以这篇我们来介绍一下cookie和session的应用. 一.使用cookie记住用户名 1.1.思路介绍 1.2.实现代码 1)LoginServlet package ...