echarts 常用设置

本篇文章记录在工作中使用echars绘图工具所用到的各个功能的配置项,及配置的API

简单echarts的使用建议直接去官网查看:https://echarts.apache.org/zh/index.html#categories

点击左上角文档有教程和官方的文档与API(中文狂喜)

名词解析

基本名词

名词 描述
chart 是指一个完整的图表,如折线图,饼图等“基本”图表类型或由基本图表组合而成的“混搭”图表,可能包括坐标轴、图例等
axis 直角坐标系中的一个坐标轴,坐标轴可分为类目型、数值型或时间型
xAxis 直角坐标系中的横轴,通常并默认为类目型
yAxis 直角坐标系中的纵轴,通常并默认为数值型
grid 直角坐标系中除坐标轴外的绘图网格,用于定义直角系整体布局
legend 图例,表述数据和图形的关联
dataRange 值域选择,常用于展现地域数据时选择值域范围
dataZoom 数据区域缩放,常用于展现大量数据时选择可视范围
roamController 缩放漫游组件,搭配地图使用
toolbox 辅助工具箱,辅助功能,如添加标线,框选缩放等
tooltip 气泡提示框,常用于展现更详细的数据
timeline 时间轴,常用于展现同一系列数据在时间维度上的多份数据
series 数据系列,一个图表可能包含多个系列,每一个系列可能包含多个数据

图表名词

名词 描述
line 折线图,堆积折线图,区域图,堆积区域图。
bar 柱形图(纵向),堆积柱形图,条形图(横向),堆积条形图。
scatter 散点图,气泡图。散点图至少需要横纵两个数据,更高维度数据加入时可以映射为颜色或大小,当映射到大小时则为气泡图
k K线图,蜡烛图。常用于展现股票交易数据。
pie 饼图,圆环图。饼图支持两种(半径、面积)南丁格尔玫瑰图模式。
radar 雷达图,填充雷达图。高维度数据展现的常用图表。
chord 和弦图。常用于展现关系数据,外层为圆环图,可体现数据占比关系,内层为各个扇形间相互连接的弦,可体现关系数据
force 力导布局图。常用于展现复杂关系网络聚类布局。
map 地图。内置世界地图、中国及中国34个省市自治区地图数据、可通过标准GeoJson扩展地图类型。支持svg扩展类地图应用,如室内地图、运动场、物件构造等。
heatmap 热力图。用于展现密度分布信息,支持与地图、百度地图插件联合使用。
gauge 仪表盘。用于展现关键指标数据,常见于BI类系统。
funnel 漏斗图。用于展现数据经过筛选、过滤等流程处理后发生的数据变化,常见于BI类系统。
evnetRiver 事件河流图。常用于展示具有时间属性的多个事件,以及事件随时间的演化。
treemap 矩形式树状结构图,简称:矩形树图。用于展示树形数据结构,优势是能最大限度展示节点的尺寸特征。
venn 韦恩图。用于展示集合以及它们的交集。
tree 树图。用于展示树形数据结构各节点的层级关系
wordCloud 词云。词云是关键词的视觉化描述,用于汇总用户生成的标签或一个网站的文字内容

实例:

		<ul  style="display: none">
			<li class="li1">2012-1</li>
			<li class="li1">2012-2</li>
			<li class="li1">2012-3</li>
			<li class="li1">2012-4</li>
			<li class="li1">2012-5</li>
			<li class="li1">2012-6</li>
			
		</ul>
		<ul style="display: none">
			<li class="li2">100</li>
			<li class="li2">500</li>
			<li class="li2">300</li>
			<li class="li2">400</li>
			<li class="li2">3000</li>
			<li class="li2">3000</li>
			
		</ul>

		<ul  style="display: none">
			<li class="li3">500</li>
			<li class="li3">400</li>
			<li class="li3">300</li>
			<li class="li3">200</li>
			<li class="li3">100</li>
			<li class="li3">3000</li>
			
		</ul>
		<ul style="display: none">
			<li class="li4">10</li>
			<li class="li4">50</li>
			<li class="li4">30</li>
			<li class="li4">40</li>
			<li class="li4">30</li>
			<li class="li4">30</li>
			
		</ul>

		<ul  style="display: none">
			<li class="li5">50</li>
			<li class="li5">40</li>
			<li class="li5">30</li>
			<li class="li5">20</li>
			<li class="li5">10</li>
			<li class="li5">30</li>
			
		</ul>
		<div class="sshgData" id="sshgData"></div>
		<script type="text/javascript">
			var dom = document.getElementById("sshgData");
			var myChart = echarts.init(dom);
			var app = {};
			option = null;
			option = {
				title: {
					text: '海关进出口数据统计',
					x: 'center'
				},
				tooltip: {
					trigger: 'axis',
					axisPointer: {
						type: 'cross',
						animation: false,
						label: {
							backgroundColor: '#505765'
						}
					}
				},
				legend: {
					data: ['进口', '出口','环比','同比'],
					x: 'center',
					top: 30
				},
				dataZoom: [{
						show: true,
						realtime: true
					},
					{
						type: 'inside',
						realtime: true
					}
				],
				xAxis: [{
					type: 'category',
					boundaryGap: false,
					axisLine: {
						onZero: false,
						lineStyle:{type:'solid',
						color:'#37A2DA',
						width:'2'}
					},
					data: [],
					axisLabel:{
						textStyle:{
							color:'#37A2DA'
						}
					}
				}],
				yAxis: [{
						name: '进口',
						type: 'value',
						fontSize: 10,
						axisLabel: {
							margin: 1,
							textStyle:{
							color:'#37A2DA'
						}},
						axisLine: {
						lineStyle:{type:'solid',
						color:'#37A2DA',
						width:'1'}
					}
						
					},
					{
						name: '出口',
						nameLocation: 'end',
						type: 'value',
						fontSize: 10,
						axisLabel: {
							margin: 1,
							textStyle:{
							color:'#37A2DA'
						}},
						axisLine: {
						lineStyle:{type:'solid',
						color:'#37A2DA',
						width:'1'}
					}
					}
				],
				series: [{
						name: '进口',
						type: 'line',
						animation: false,
						areaStyle: {},
						itemStyle: {
							color: 'rgb(194, 55, 51)'
						},
						areaStyle: {
							color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
								offset: 0,
								color: 'rgb(194, 55, 51)'
							}, {
								offset: 1,
								color: 'rgb(256, 256, 256)'
							}])
						},
						lineStyle: {
							width: 1
						},
						data: []
					},
					{
						name: '出口',
						type: 'line',
						yAxisIndex: 1,
						animation: false,
						itemStyle: {
							color: 'rgb(81, 149, 232)'
						},
						areaStyle: {
							color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
								offset: 0,
								color: 'rgb(81, 149, 232)'
							}, {
								offset: 1,
								color: 'rgb(256, 256, 256)'
							}])
						},
						lineStyle: {
							width: 1
						},
						data: []
					},
					{
						name: '同比',
						type: 'line',
						yAxisIndex: 1,
						animation: false,
						itemStyle: {
							color: '#8378EA'
						},
						areaStyle: {
							color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
								offset: 0,
								color:'#8378EA'
							}, {
								offset: 1,
								color: 'rgb(256, 256, 256)'
							}])
						},
						lineStyle: {
							width: 1
						},
						data: []
					},{
						name: '环比',
						type: 'line',
						yAxisIndex: 1,
						animation: false,
						itemStyle: {
							color: '#fb7293'
						},
						areaStyle: {
							color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
								offset: 0,
								color: '#fb7293'
							}, {
								offset: 1,
								color: 'rgb(256, 256, 256)'
							}])
						},
						lineStyle: {
							width: 1
						},
						data: []
					}
				]
			};
	
			var ull = $(".li1");
			var ul2 = $(".li2");
			var ul3 = $(".li3");
			var ul4 = $(".li4");
			var ul5 = $(".li5");
			for(var i = 0; i < ull.length; i++) {
				var bb = ull.eq(i).text()
				console.log(ull.eq(i).text())
				option.xAxis[0].data.push(bb);
				if(option && typeof option === "object") {
					myChart.setOption(option, true);
				}
			}

			for(var i = 0; i < ul2.length; i++) {
				var bb1 = ul2.eq(i).text()
				console.log(ull.eq(i).text())
				option.series[0].data.push(bb1);
				if(option && typeof option === "object") {
					myChart.setOption(option, true);
				}
			}

			for(var i = 0; i < ul3.length; i++) {
				var bb3 = ul3.eq(i).text()
				console.log(ull.eq(i).text())
				option.series[1].data.push(bb3);
				if(option && typeof option === "object") {
					myChart.setOption(option, true);
				}
			}
			for(var i = 0; i < ul4.length; i++) {
				var bb4 = ul4.eq(i).text()
				console.log(ull.eq(i).text())
				option.series[2].data.push(bb4);
				if(option && typeof option === "object") {
					myChart.setOption(option, true);
				}
			}
			for(var i = 0; i < ul5.length; i++) {
				var bb5 = ul5.eq(i).text()
				console.log(ull.eq(i).text())
				option.series[3].data.push(bb5);
				if(option && typeof option === "object") {
					myChart.setOption(option, true);
				}
			}
		</script>


 

猜你喜欢

转载自blog.csdn.net/weixin_42693104/article/details/109293139