echart 柱状图+折线图重叠+虚线、点样式调整

需求需要,第一次使用echart,记录一下,先看一下最终效果图


直接看代码及注释吧。

html

<div id="x_count_echart">
</div>

css

#x_count_echart{
    height: 460px;
    width: 500px;
}

js,设置的有点多哈,可以看最后说明

// 基于准备好的dom,初始化echarts实例
		var myChart = echarts.init(document.getElementById('x_count_echart'));

        // 指定图表的配置项和数据
        var option = {
        	color: ['#52BEDB'], //柱状图的颜色
		    title: {
		        text: '全国军民融合创新', //图表的名称
		        x: 'center', //显示位置
		        bottom:'0',
		        textStyle:{
		            color:'#000',
		            fontSize:'20',
		        }
		    },
        	legend: {
        		data:['销量','销量1','销量2'],
		        x: 'center',
		        bottom:'60',
        	},
        	xAxis: { // x轴的设置
        		name: '区域',
        		nameLocation: 'start',
        		nameTextStyle: {        			
        			fontSize: 14,
        			padding: [35,0,0,10],
        			color: '#52BEDB'			
        		},
        		data: ["区域","区域","区域","区域","区域","区域","区域","区域","区域"," "]
        	},
        	grid: {
		        bottom: '20%',
		        containLabel: true
	   		},
        	yAxis: { //y轴的设置
        		name: '个数',
        		min: 200, //y轴刻度设置,区间为200-650
        		max: 650,
        		interval:50,  //递增50
        		nameTextStyle: {        			
        			fontSize: 14,
        			padding: [0,35,0,0],
        			color: '#52BEDB'			
        		},
            	axisLine: { // y轴线
            		show:false
            	},
	            splitLine: { //y轴网格
	            	show: false
	            },    
				axisTick: { //y轴刻度线
					show: false
				} 	
			},
			series: [{ //这里定义要显示的图形
				name: '销量',
				type: 'bar', //柱状图
				data: [470, 380, 360, 230, 210, 350, 600, 525, 425, 200]
			},
			{
				name:'销量1',
				type:'line', //折线图
				symbolSize:8,
				symbol: 'square', //点的样式为正方形
				itemStyle : {  /*设置折线颜色*/
					normal : {
						color:'#E26A6A'
					}
				},
				data:[400, 350, 340, 260, 252, 395, 650, 585, 525, 370]
			},
			{
				name:'销量2',
				type:'line', //虚线
				symbolSize:8,
				symbol: 'circle',//点的样式为圆形
				data:[240, 355, 350, 348, 340, 420, 480, 600, 625, 500],
				color:['#89C4F4'],
				smooth:false, //这是设置虚线所需属性
				itemStyle : {  /*设置折线颜色*/
					normal : {	
						borderColor: '#4C8E9F',
						lineStyle: {
							width:2,		 
							type:'dotted' //线条样式,虚线
						}
					}
				}				
			}
			]
		};
        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);

才开始使用时,是不是感觉官网教程看不懂的感觉,到处搜这样那样设置。其实吧,一般是我们没好好看文档。

w3c echarts文档

他列出来的使用格式和我们实际使用格式好像不太一样,慢慢来,找到他的使用方法,所有属性都可以为所欲为所欲为

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先需要准备好数据,例如下面的数据: ```javascript // 柱数据 var barData = [ { name: 'A', type: 'bar', data: [10, 20, 30, 40, 50] }, { name: 'B', type: 'bar', data: [20, 30, 40, 50, 60] }, { name: 'C', type: 'bar', data: [30, 40, 50, 60, 70] } ]; // 折线图数据 var lineData = [ { name: 'D', type: 'line', data: [20, 30, 40, 50, 60] }, { name: 'E', type: 'line', data: [30, 40, 50, 60, 70] }, { name: 'F', type: 'line', data: [40, 50, 60, 70, 80] } ]; ``` 然后,创建一个 ECharts 实例,并配置表的基本属性: ```javascript // 创建 ECharts 实例 var myChart = echarts.init(document.getElementById('chart')); // 配置表基本属性 var option = { title: { text: '多柱折线图' }, tooltip: { trigger: 'axis' }, legend: { data: ['A', 'B', 'C', 'D', 'E', 'F'] }, grid: { top: 70, bottom: 50 }, xAxis: { type: 'category', data: ['Jan', 'Feb', 'Mar', 'Apr', 'May'] }, yAxis: { type: 'value' } }; ``` 接下来,将柱数据和折线图数据添加到 option 中: ```javascript option.series = barData.concat(lineData); ``` 最后,将 option 应用到 ECharts 实例中即可: ```javascript myChart.setOption(option); ``` 完整代码如下: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>多柱折线图</title> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts-gl/dist/echarts-gl.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts-stat/dist/ecStat.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/extension/dataTool.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/map/js/china.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/map/js/world.js"></script> </head> <body> <div id="chart" style="height: 500px;"></div> <script> // 柱数据 var barData = [ { name: 'A', type: 'bar', data: [10, 20, 30, 40, 50] }, { name: 'B', type: 'bar', data: [20, 30, 40, 50, 60] }, { name: 'C', type: 'bar', data: [30, 40, 50, 60, 70] } ]; // 折线图数据 var lineData = [ { name: 'D', type: 'line', data: [20, 30, 40, 50, 60] }, { name: 'E', type: 'line', data: [30, 40, 50, 60, 70] }, { name: 'F', type: 'line', data: [40, 50, 60, 70, 80] } ]; // 创建 ECharts 实例 var myChart = echarts.init(document.getElementById('chart')); // 配置表基本属性 var option = { title: { text: '多柱折线图' }, tooltip: { trigger: 'axis' }, legend: { data: ['A', 'B', 'C', 'D', 'E', 'F'] }, grid: { top: 70, bottom: 50 }, xAxis: { type: 'category', data: ['Jan', 'Feb', 'Mar', 'Apr', 'May'] }, yAxis: { type: 'value' } }; // 将柱数据和折线图数据添加到 option 中 option.series = barData.concat(lineData); // 应用 option 到 ECharts 实例中 myChart.setOption(option); </script> </body> </html> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值