echart案例之横向多数据柱状图(含属性详解)

news2024/9/27 9:18:47

一、此案例基于Vue3+ts,效果展示:

二、单个属性的值:

1、grid 整个图表的位置

grid.containLabel  是否包含标签

1.简单来说如果是false,到底部的距离是从坐标轴线开始计算的

2.如果是true,到底部的距离就是从坐标文字底部开始计算

2、legend 图例

legend.orient 图例的朝向

1.vertical 垂直显示

2.horizontal 水平显示

legend.x/y 设置图例在X轴方向上的位置以及在Y轴方向上的位置

x:默认left,所有取值范围:left/center/right

y:默认top,所有取值范围:top/center/bottom

legend.itemGap 间隔数值

3、xAxis/yAxis x/y轴相关样式

splitLine.lineStyle.type 设置背景线条的类型

1.dashed 虚线

2.solid 实线

axisTick 刻度线相关样式

show:false/true 是否隐藏刻度线

inside:false/true 刻度线指向内部还是外部

axisLine 轴线相关样式

axisLabel 坐标文字相关样式

formatter: '{value} % ' 自定义文字内容,添加单位等

4、series 数据

itemStyle 柱体样式

1.单个柱体文字显示样式

  label: {

            show: false, // 是否显示

            position: 'right', // 显示的位置

          }

2.柱体设置渐变颜色,单色直接写色值即可

  color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [

            {

              offset: 0,

              color: 'rgba(255, 176, 52, 1)',

            },

            {

              offset: 1,

              color: 'rgba(93, 78, 52, 0.01)',

            },

          ]),

三、完整代码如下:

<template>
	<div class="container" ref="barRef"></div>
</template>
<script setup lang="ts" name="waterAndElectricity-bar">
import { ref, onMounted } from 'vue';
import * as echarts from 'echarts';

const barRef = ref();
let myChart: any = null; // echarts实例对象

onMounted(() => {
	initCharts();
});

// 变化尺寸
const onResize = (resize: any) => {
	console.log('resize: ', resize);
	myChart && myChart.resize();
};
window.addEventListener('resize', onResize);

const initCharts = () => {
	let option = {
    // 整个echarts图标的位置
		grid: {
			left: '2%',
			right: '4%',
			top: '15%',
			bottom: '0%',
      // 是否包含标签,简单来说如果是false,到底部的距离是从坐标轴线开始计算的;如果是true,到底部的距离就是从坐标文字底部开始计算
			containLabel: true, 
		},
    // 鼠标hover出现的提示框组件
		tooltip: {
			trigger: 'axis',
			axisPointer: {
				type: 'shadow',
			},
			backgroundColor: 'rgba(69, 173, 175, 0.5)',
			borderWidth: 0,
			textStyle: {
				color: '#fff',
				fontSize: 14,
			},
		},
    // 图例
		legend: {
			align: 'left', // 对齐反向
			right: 10,
			textStyle: {
				color: '#59697A',
				fontSize: 14,
			},
			itemWidth: 25,
			itemHeight: 8,
			itemGap: 10, // 间隔
		},
		barWidth: 10, // 柱体宽度
    // x轴相关样式
		xAxis: {
			type: 'value',
      // 背景线条(竖着的)
			splitLine: {
				lineStyle: {
					color: 'rgba(65, 82, 100, 0.50)',
					type: 'dashed', // dashed设置背景横线为虚线,solid为实线
				},
			},
      // 坐标轴的刻度线
			axisTick: {
				show: false, // 是否隐藏
        inside: true, // 刻度线指向内部还是外部
			},
      // x轴线
			axisLine: {
				lineStyle: {
					color: '#26D9FF',
				},
			},
      // x轴文字样式
			axisLabel: {
				formatter: '{value} % ', // 自定义x轴文字内容,添加单位等
				color: '#59697A',
				fontSize: 12,
			},
		},
    // y轴相关样式
		yAxis: {
			type: 'category',
			data: ['水', '电', '气'],
      // 背景线条(横着的)
			splitLine: {
				show: false, // 是否显示
			},
			axisTick: {
				show: false,
			},
			axisLine: {
				//  改变y轴颜色
				lineStyle: {
					color: '#415264',
					width: 2,
					type: 'solid',
				},
			},
			axisLabel: {
				//  改变y轴字体颜色和大小
				//formatter: '{value} m³ ', //  给y轴添加单位
				color: '#59697A',
				fontSize: 12,
			},
		},
    // 所有数据
		series: [
			{
				type: 'bar',
				name: '本月',
        // 柱体样式
				itemStyle: {
          // 单个柱体文字显示样式
					label: {
						show: false, // 是否显示
						position: 'right', // 显示的位置
						color: '#F2A934',
						fontSize: 12,
					},
          // 柱体设置渐变颜色,单色直接写色值即可
					color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [
						{
							offset: 0,
							color: 'rgba(255, 176, 52, 1)',
						},
						{
							offset: 1,
							color: 'rgba(93, 78, 52, 0.01)',
						},
					]),
				},
				data: [19, 52, 76], // 数据
			},
			{
				type: 'bar',
				name: '上月',
				itemStyle: {
					label: {
						show: false, 
						position: 'right', 
						color: '#59F3F6',
						fontSize: 12,
					},
					color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [
						{
							offset: 0,
							color: 'rgba(92, 252, 255, 1)',
						},
						{
							offset: 1,
							color: 'rgba(44, 69, 98, 0.06)',
						},
					]),
				},
				data: [12, 35, 56],
			},
		],
	};
	myChart = echarts.init(barRef.value as HTMLDivElement);
	myChart.setOption(option, true);
};
</script>
<style lang="scss" scoped>
.container {
	width: 100%;
	height: 100%;
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1130693.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

职能篇—自动驾驶产品经理

自动驾驶产品开发流程 在讲自动驾驶产品经理之前&#xff0c;先简单了解一下自动驾驶的开发体系。如上图所示&#xff0c;从产品需求开始&#xff0c;经由系统需求、系统架构、软件需求、软件架构&#xff0c;最终分解到软件代码实现模块&#xff0c;再经由MIL、SIL、HIL、VIL完…

学习笔记二十二:K8s控制器Replicaset

K8s控制器Replicaset Replicaset控制器&#xff1a;概念、原理解读Replicaset概述Replicaset工作原理&#xff1a;如何管理PodReplicaset控制器三个组成部分 Replicaset资源清单文件编写技巧Replicaset使用案例&#xff1a;部署Guestbook留言板编写一个ReplicaSet资源清单资源清…

Windows 安装 jmeter

注&#xff1a;在安装Jmeter之前&#xff0c;请先检查下电脑有没有装JDK&#xff1a;开始->运行->然后输入cmd->进入命令行界面&#xff0c;输入java -version &#xff0c; 出现以下信息就是此电脑已安装了JDK&#xff1a; 下载地址 http://jmeter.apache.org/downlo…

Hive安装配置笔记

版本说明 hadoop-3.3.6&#xff08;已安装&#xff09; mysql-8&#xff08;已安装&#xff09; hive-3.1.3 将hive解压到对应目录后做如下配置&#xff1a; 基本配置与操作 1、hive-site <configuration><!-- jdbc连接的URL --><property><name>ja…

软考高级之系统架构师之数据流图和流程图

数据流图 概述 数据流图&#xff0c;DFD&#xff0c;用于表示业务信息系统中的数据流&#xff0c;它表达系统中的据传从输入到存储间所涉及的程序。采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程&#xff0c;是结构化系统分析方法的主要表达工具…

[蓝桥双周赛]铺地砖

题目描述 小蓝家要装修了&#xff0c;小蓝爸爸买来了很多块&#xff08;你可以理解为数量无限)23规格的地砖&#xff0c;小蓝家的地板是n m规格的&#xff0c;小蓝想问你&#xff0c;能否用这些23的地砖铺满地板。 铺满地板:对于地板的每个区域&#xff0c;都有且只有一块地…

监控与升级

文章目录 主要内容一.部署Metrics1.部署代码如下&#xff08;示例&#xff09;: 2.解释 二.升级控制平面1.先确定要升级的版本代码如下&#xff08;示例&#xff09;: 2.禁止master节点接受新调度代码如下&#xff08;示例&#xff09;: 3.驱逐master节点上的现有任务代码如下&…

IP地址和子网掩码

1.域名 计算机主机名.本地名.组名.最高层域名 http://www.baidu.com 2.IP地址 每个IP地址都由4个小于256的数字组成&#xff0c;数字之间用“.”分开。Internet的IP地址共有32位&#xff0c;4个字节。它有两种表示格式&#xff1a;二进制格式和十进制格式。二进制格式是计算…

Matlab进阶绘图第32期—小提琴图(Violin Chart)

​小提琴图结合了箱线图与核密度图的特征&#xff0c;可用于展示多组数据的分布状态及概率密度。 由于Matlab中未收录小提琴图的绘制函数&#xff0c;因此需要大家自行解决。 本文在violin工具&#xff08;Hoffmann H, MathWork, 2015&#xff09;的基础上&#xff0c;对一些…

Leetcode刷题详解——在排序数组中查找元素的第一个和最后一个位置

1. 题目链接&#xff1a;34. 在排序数组中查找元素的第一个和最后一个位置 2. 题目描述&#xff1a; 给你一个按照非递减顺序排列的整数数组 nums&#xff0c;和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target&#xff…

C#,数值计算——分类与推理Phylo_upgma的计算方法与源程序

1 文本格式 using System; using System.Collections.Generic; namespace Legalsoft.Truffer { public class Phylo_upgma : Phylagglom { public override void premin(double[,] d, int[] nextp) { } public override double dminfn(doubl…

计算数组中各元素的平方numpy.square()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 计算数组中各元素的平方 numpy.square() 选择题 请问np.square(a1)的结果是&#xff1a; import numpy as np a1 [1,2,3] print("【显示】a1 ",a1) print("【执行】np.sq…

KNN-水仙花的分类

题目&#xff1a; 思路&#xff1a; 1、处理数据集&#xff0c;这里用的是题目已知的数据集&#xff0c;所以说需要提前将写好的数据放到excel表格里&#xff0c;再进行读取。 2、将数据集划分为训练集和测试集 3、定义K-NN模型。 4、训练模型 5、预测模型 6、计算分类精…

【鸿蒙软件开发】ArkTS基础组件之DataPanel(数据面板)、DatePicker(日期选择)

文章目录 前言一、DataPanel数据面板1.1 接口参数介绍 1.2 属性1.3 DataPanelType枚举说明1.4 深度剖析number[]参数1.5 示例代码 二、DatePicker日期选择2.1 接口参数说明 2.2 属性2.3 事件DatePickerResult对象说明 2.4 示例代码 总结 前言 DataPanel&#xff1a;数据面板组…

C++前缀和算法的应用:装包裹的最小浪费空间 原理源码测试用例

本文涉及的基础知识点 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 题目 给你 n 个包裹&#xff0c;你需要把它们装在箱子里&#xff0c;每个箱子装一个包裹。总共有 m 个供应商提供 不同尺寸 的箱子&#xff08;每个规格都有无数个箱…

黑豹程序员-架构师学习路线图-百科:Mybatis的伴侣MybatisPlus

文章目录 1、什么是MybatisPlus&#xff1f;2、MybatisPlus发展历史 1、什么是MybatisPlus&#xff1f; java单体项目几乎已经被SSM三大框架所垄断&#xff0c;而M就代表Mybatis。 但Mybatis的结构还是较复杂的&#xff0c;例如&#xff1a;User模块&#xff0c;需要写UserMap…

[开源]一个低代码引擎,支持在线实时构建低码平台,支持二次开发

一、开源项目简介 TinyEngine低代码引擎使能开发者定制低代码平台&#xff0c;支持在线实时构建低码平台&#xff0c;支持二次开发或集成低码平台能力。 二、开源协议 使用MIT开源协议 三、界面展示 四、功能概述 TinyEngine是一个低代码引擎&#xff0c;基于这个引擎可以构…

如何批量给视频添加logo水印?

如果你想为自己的视频添加图片水印&#xff0c;以增强视频的辨识度和个性化&#xff0c;那么你可以使用固乔剪辑助手软件来实现这一需求。下面就是详细的操作步骤&#xff1a; 1.下载并打开固乔剪辑助手软件&#xff0c;这是一款简单易用的视频剪辑软件&#xff0c;功能丰富&am…

实验数据旋转角度处理过程中的常见问题

问题 做实验过程中使用 EM tracker 测量自己机器人末端旋转时的角度。 尾部 设置EMTracker 1&#xff0c;作为固定基准&#xff0c;其轴线与机器人中心轴线近似重合&#xff0c;EM Tracker 2 固定在机器人活动关节上&#xff0c;两者轴线夹角近似为机器人旋转角度。论文尚未发…

Jenkins 安装全攻略:从入门到精通

目录 一&#xff1a;安装文件夹准备 1.打开&#xff0c;/home/admin目录 2.新建三个文件夹 二&#xff1a;安装tomcat 1.打开tomcat目录进行tomcat安装 2.解压tomcat文件 3.开放端口号 4.启动tomcat 5.浏览器访问tomcat 三&#xff1a;安装Maven 1.打开maven目录进行…