//定义一组颜色值,按顺序取出

var colorGroup = ["#6ca3c4","#76bfa3","#ea8f7a","#499acd","#ba97c9","#98bd76","#e0ab57"];

//获取手机屏幕宽度

var iWidth = document.documentElement.clientWidth;

//封装一个多折线的

var moreBrokenLineOption = function (options) {

var option = {

backgroundColor: "#fff",

title:{

show:false,

},

legend: {

data: options.legendData,

left: 20*iWidth/720,

icon: 'circle',

bottom: 0*iWidth/720,

textStyle: {

fontSize: 16*iWidth/720,

color: "#91989e",

fontWeight:"normal",

fontFamily:"Microsoft Yahei"

},

},

grid: {

top: 20*iWidth/720,

left: 80*iWidth/720,

right: 40*iWidth/720,

bottom:55*iWidth/720

},

xAxis: [

{

type: 'category',

axisTick: {

show: false

},

axisLine: {

lineStyle: {

color: "#DFE0E1"

}

},

axisLabel: {

margin:12*iWidth/720,

textStyle: {

color: '#6f7479',

fontSize: 16*iWidth/720,

fontWeight:"normal",

fontFamily:"Microsoft Yahei"

}

},

boundaryGap: false,

data: ""

}

],

yAxis: [

{

type: 'value',

nameLocation:"start",

nameTextStyle: {

color: '#ccc',

fontSize: 16*iWidth/720,

fontWeight:"normal",

fontFamily:"Microsoft Yahei"

},

axisTick: {

show: false

},

splitLine: {

show: false

},

axisLine: {

lineStyle: {

color: "#DFE0E1"

}

},

axisLabel: {

textStyle: {

color: '#6f7479',

fontSize: 16*iWidth/720,

fontWeight:"normal",

fontFamily:"Microsoft Yahei"

},

margin:16*iWidth/720,

formatter: function (value, index) {

if (options.axisLabelFormatter) {

return value + '%';

} else {

return value;

}

}

}

}

],

series: []

}

//重组数据
option.xAxis[0].data = (function () {

return options.xAxisData.map(function (item, index) {

return {

value: item,

textStyle: {

fontSize: 17*iWidth/720

}

}

})

})();

//重组数据option.series

(function () {

options.legendData.map(function (item, index) {

option.series.push({

name: item,

type: 'line',

stack: '总量',

data: options.seriesData[index],

symbol: "circle",

symbolSize: '10',

//改变折现点的样式

itemStyle: {

normal: {

color: colorGroup[index],

borderType: "solid",

borderWidth: "2",

borderColor: "#fff"

}

},

//折线的颜色

lineStyle: {

normal: {

color: colorGroup[index]

}

},

// label: {

// normal: {

// show: true,

// position: 'top'//显示在里面顶部 用inner 显示外面贴着顶部用top

// }

// },

areaStyle: {

normal: {

//背景颜色

color: colorGroup[index],

//设置透明度

opacity:"0.2",

lineStyle: {

color: colorGroup[index]

}

}

}

})

})

})()

return option;
}

使用方法

var bigCharts = function (options) {
var mainDom = document.getElementById(options.parentDom);

var html = '<ul class="header">'

+ '<li class="title">'

+ '<span class="title-title">'+options.title+'</span>'

+ '<sapn class="title-time">'+options.time+'</sapn>'

+ '</li>'

+ '<li class="subtext">'

+ '<span class="subtext-num">'+options.clickNum+'</span>'

+ '<span class="subtext-text">次</span>'

+ '</li>'

+ '</ul>';

mainDom.innerHTML = html;

//创建存放图表的dom节点

var echartDom = document.createElement("div");

echartDom.id = options.parentDom + "_echart";

echartDom.className = "big-chart";

mainDom.appendChild(echartDom);

echartDom = null;

var echart = echarts.init(document.getElementById(options.parentDom + "_echart"));

echart.setOption(moreBrokenLineOption({

"legendData": options.legendData,

"xAxisData":options.xAxisData,

"axisLabelFormatter": options.axisLabelFormatter,

"seriesData":options.seriesData

}));

}

//第一个大图

bigCharts({

"parentDom":"main0",

"title":"用户访问点击率",

"time":"2016-12-20至2017-02-20",

"clickNum":"100",

"legendData":['活动点击数', '参与人数', '达标人数', '参与中奖人数', '中奖人数'],

"xAxisData":["10.15", "10.16", "10.17", "10.18", "10.19", "10.20", "10.21"],

"axisLabelFormatter":false,

"seriesData":[

[120, 132, 101, 134, 90, 230, 280],

[220, 182, 191, 234, 290, 330, 310],

[150, 232, 201, 154, 190, 330, 410],

[320, 332, 301, 334, 390, 330, 320],

[820, 932, 901, 934, 1290, 1330, 1320]

]

});

一个手机图表(echarts)折线图的封装的更多相关文章

  1. 图表echarts折线图,柱状图,饼状图

    总体就是有折线图相关图标的设置,x,y轴的设置,x,y轴或者数据加上单位的设置.饼状图如何默认显示几个数据中的某个数据 折线图:legend(小标题)中间默认是圆圈 改变成直线 在legend设置的时 ...

  2. echarts折线图动态改变数据时的一个bug

    echarts折线图中当增加dataZoom,修改start大于0的时候,会出现折线混乱,变成竖直的线,绘制有问题. 解决方法,在dataZoom中增加filterMode: 'empty' http ...

  3. 实现Echarts折线图的虚实转换

    需求:医院的体温单,在统计体温时,对于正常情况下统计的体温数据,需要显示实线:对于进行物理降温后统计的体温数据,需要显示虚线. 现有的体温单是运用 Echarts 折线图,统一用实线显示.因此在这基础 ...

  4. d3.js 教程 模仿echarts折线图

    今天我们来仿echarts折线图,这个图在echarts是折线图堆叠,但是我用d3改造成了普通的折线图,只为了大家学习(其实在简单的写一个布局就可以).废话不多说商行代码. 1 制作 Line 类 c ...

  5. ECharts折线图堆叠设置为不堆叠的方法

    下图是ECharts折线图堆叠的官方源码,设置折线图不堆叠只需要将每一个stack的值设置为不一样的名称或者将stack属性删除即可. option = { title: { text: '折线图堆叠 ...

  6. vue使用axios读取本地json文件来显示echarts折线图

    编辑器:HBuilderx axios文档:http://www.axios-js.com/zh-cn/docs/ echarts实例:https://echarts.apache.org/examp ...

  7. canvas图表(2) - 折线图

    原文地址:canvas图表(2) - 折线图 话说这天气一冷啊, 就患懒癌, 就不想码代码, 就想着在床上舒舒服服看视频. 那顺便就看blender视频, 学习下3D建模, 如果学会了建3D模型, 那 ...

  8. echarts折线图,数据切换时(最近七天)绘图不合理现象

    echarts折线图,当进行数据切换时存在绘制不合理的问题,数据没错,但绘制不对. 两个0之间的连线应该是平滑直线,如图: 正确的显示: 解决: 在myCharts.setOption(option) ...

  9. echarts 拼图和折线图的封装 及常规处理

    1.html <div id="wrap"></div> 2.js ; (function ($) { $.fn.extend({ echartsPie: ...

随机推荐

  1. RDA 字库制作

    制作韩语字库为例: 1.韩语UNICODE 范围 TV_IDF_uni_korean.txt [01fa,] [02c6,02c7] [02c9,02ca] [02cd,02cd] [02d8,02d ...

  2. 看看 SDWebImage内部基本实现过程

    一.实现流程 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 ...

  3. hadoop-Combiner作用用法

    文章来源http://blog.csdn.net/ipolaris/article/details/8723782 reduce的输入每个key所对应的value将是一大串1,但处理的文本很多时,这一 ...

  4. Rails 拉数据初始数据库

    rails c   [1] pry(main)> Scraping.exec

  5. wcf 代理配置

    <?xml version="1.0" encoding="utf-8"?> <configuration>   <appSett ...

  6. Linux下MySql数据的导入导出

    1,每天4点备份mysql数据: 2,为节省空间,删除超过3个月的所有备份数据: 3,删除超过7天的备份数据,保留3个月里的 10号 20号 30号的备份数据: mysqldump -u用戶名 -p密 ...

  7. Android 关于android.os.Build介绍

    关于Build类的介绍 这个类为一个获取设备一些初始化信息的类,该类的主要信息都是通过一些static的字段获得: public static final String BOARD The name ...

  8. jdk11安装没有jre文件夹

    原因:jdk11安装之后是没有jre的 如果需要jre,需要到jdk目录下面去    打开命令窗口,然后执行如下命令:    bin\jlink.exe --module-path jmods --a ...

  9. HashTable, HashSet, HashMap的区别

    HashTable, HashSet, HashMap的区别     hash是一种很常见也很重要的数据结构,是用hash函数根据键值(key)计算出存储地址,以便直接访问.由完美hash函数(即键值 ...

  10. JavaScript的基础数据类型和表达式

    Java Script的基础数据类型和表达式 基本的数据类型: number(数值)类型:可分为整数和浮点数 string(字符)类型:是用单引号“'”或者双引号“"”来说明的. boole ...