Echarts 每个柱子一种渐变色的象形柱状图

在这里插入图片描述

第023个

点击查看专栏目录


本示例是解决每个柱状图的每一个柱子都呈现一种渐变色,每个柱子的颜色都不同。这里同时采用了象形的柱状图效果。

示例效果

在这里插入图片描述

示例源代码(共125行)

/*
* @Author: 还是大剑师兰特(CSDN)
* @下面源代码版权归还是大剑师兰特所有,可供学习或商业项目中借鉴,未经授权,不得重复地发表到博客、论坛,问答,git等公共空间或网站中。
* @Email: 2909222303@qq.com
* @First published in CSDN
* @First published time: 2023-02-27
*/
<template>
	<div class="container">
		<h3>vue+echarts:每个柱子一种渐变色的象形柱状图</h3>
		<p>大剑师兰特,还是大剑师兰特</p>
		<div id="vue-echarts" ref="refEcharts"> </div>
	</div>
</template>

<script>
	import * as echarts from 'echarts'; //局部引用,如果采用全局模式,这里不写
	export default {
		name: 'cuclife',
		data() {
			return {}
		},
		methods: {
			initCharts() {
				let myChart = echarts.init(this.$refs.refEcharts);
				let colorList = {
					first: ["#F179C4", "#26AEFB", "#CDAD92", "#ED65BA", "#989FBB",  "#6718CF"],
					second: [ "#056FAB", "#FFAA62", "#E33AA3", "#28B1FF", "#FFAA62", "#F47384"]
				}

				myChart.setOption({
					title: {
						text: '标题:ECharts示例'
					},
					xAxis: {
						type: 'category',
						data: ['cuclife', 'openlayers', 'cesium', 'echarts', 'leaflet']
					},
					yAxis: {
						type: 'value',
						name: '技术技能值', //坐标轴名称
						nameLocation: 'middle', //坐标轴的位置
						nameTextStyle: {
							color: '#ff00ff',
						},
						nameGap: 50, //坐标轴名称与轴线之间的距离
						nameRotate: 90, //坐标轴名字旋转角度值,
						axisLine: {
							lineStyle: {
								color: '#ff00ff'
							},
							symbol: ['none', 'arrow'], //轴线两边的箭头
							symbolSize: [8, 12]
						},
						axisTick: {
							inside: false, //标轴刻度是否朝内,默认朝外
						},
						axisLabel: {
							show: true,
							inside: false,
							formatter: '{value}'
						},
						splitArea: {
							show: true,
							color: ['rgba(250,250,250,0.3)', 'rgba(200,200,200,0.3)'],
						}
					},
					grid: {
						x: 25,
						y: 55,
						x2: 25,
						y2: 20,
						containLabel: true
					},

					series: [{
                        // 以下是核心代码
						type: 'pictorialBar', //设置类型为象形柱状图
						symbol: 'rect', //图形类型,带圆角的矩形
						symbolMargin: '3', //图形垂直间隔
						symbolRepeat: true, //图形是否重复
						symbolSize: [50, 25], //图形元素的尺寸	
							
						itemStyle: {
							color: params => { //图形渐变颜色方法,四个数字分别代表,右,下,左,上,offset表示0%到100%
								return new echarts.graphic.LinearGradient(
									1, 0, 0, 0, [{
											offset: 0,
											color: colorList.first[params.dataIndex]
										},
										{
											offset: 1,
											color: colorList.second[params.dataIndex]
										}
									])
							}

						},
				
						data: [15, 36, 10, 10, 20],

					}]
				});
			}
		},
		mounted() {
			this.initCharts();
		}
	}
</script>
<style scoped>
	.container {
		width: 840px;
		height: 580px;
		margin: 50px auto 0;
		border: 1px solid rgb(228, 57, 97);
	}

	#vue-echarts {
		width: 800px;
		height: 460px;
		border: 1px solid #d8d;
		margin: 0 auto;
	}
</style>


相关资料参考

https://echarts.apache.org/zh/option.html#series-pictorialBar.type

专栏介绍

在vue和echarts联合技术栈的操控下,本专栏提供行之有效的源代码示例。这里既包括样式的修改,又包括常用bug的解决。
(1)提供title示例:展示控制标题的颜色、位置、子标题,连接等
(2)提供legend示例:展示控制图例的类型、宽度、高度、位置、间隙,边框、阴影、透明度、偏移,字体、颜色,提示语等
(3)提供grid示例:展示控制绘图网格的位置、宽度、高度、边框、阴影等
(4)提供xAxis示例:展示控制x 轴的位置、类型、名称、字体、对齐方式、边框、阴影、宽度、高度等
(5)提供yAxis示例:展示控制y 轴的位置、类型、名称、字体、对齐方式、边框、阴影、宽度、高度等
(6)提供dataZoom示例:展示控制区域缩放的类型、位置、filterMode等
(7)提供tooltip示例:展示控制提示框组件的触发方式、位置、样式,标签、动画、内容格式器等
(8)提供地理坐标系示例:展示控制地理坐标的经纬度、放缩、位置,距离、字体、边框等
(9)提供animation示例:展示控制动画的持续时间、延迟时间、动画方式,连接等
(10)提供其他示例:展示series等组件的信息内容。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还是大剑师兰特

打赏一杯可口可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值