可视化 | 【echarts】多组条形图堆叠条形图(toolbox应用)

文章目录

  • 📚js
    • 🐇整体框架
    • 🐇整体框架
    • 🐇option
    • 🐇字体大小设置总结

  • 【echarts】渐变条形+折线复合图

  • 【echarts】金字塔图

  • 【echarts】中国地图热力图

  • 【echarts】气泡图
    在这里插入图片描述
    在这里插入图片描述

  • html和css同 【echarts】渐变条形+折线复合图

📚js

🐇整体框架

🐇整体框架

  1. 使用echarts.init方法初始化了一个 ECharts 实例,指定了一个 div 元素作为图表的容器。
  2. 定义图表的配置项option,其中包括了图表的标题、提示框、x 轴、y 轴、数据系列等等。
  3. 通过myChart.setOption将配置项应用到echarts实例。
  4. 绑定事件处理函数myChart.resize以便让图表自适应新的窗口大小,确保图表在不同尺寸的屏幕上能够正确显示。
    var myChart = echarts.init(document.getElementById('test1'));var option = {...};if (option && typeof option === 'object') {myChart.setOption(option);
    }
    window.addEventListener('resize', myChart.resize);
    

🐇option

  • 标题、悬浮提示框、图例

    • 如果tooltip设置为空即tooltip:{},则将会用默认的样式和行为。(为空为默认样式,如果干脆不写tooltip那就没有悬浮框效果了)。
    • 在默认情况下,tooltip 的行为会在鼠标悬停时触发,并显示该数据点的数值。会显示以下信息: ①数据项的名称(如果有) ②相关数据项的数值。至于样式,通常是一个半透明的浮动框,如下:
      在这里插入图片描述
    • legenddata的内容和后续数据项配置的name对应。
    title: {text: '唐朝历年出生死亡人数统计', left: 'center',top: '1%',textStyle: {color: '#333', fontSize: 34, fontWeight: 'bold', fontFamily: 'KaiTi, serif'}
    },
    tooltip: {},
    legend: {data: ['出生', '死亡'],left: '20%',top: '5%',textStyle: {  fontSize: 22}
    }
    
  • 神奇的brush和toolbox🔥

    • brush 是 ECharts 中的刷选功能,它允许用户在图表中进行区域选择或刷选。
      • toolbox: ['rect', 'clear']:配置了画笔(brush)工具栏中包含的功能按钮。‘rect’ 表示矩形选框,‘clear’ 表示清除选框。这样用户在图表上就可以使用画笔工具在 x 轴上进行区域选取。
      • 除了 ‘rect’ 和 ‘clear’,ECharts 中还有其他一些可用的画笔(brush)类型,例如:‘lineX’:横向刷选 ; ‘lineY’:纵向刷选 ;‘keep’:保持之前的选框 ;‘unKeep’:清除之前的选框。
  • toolbox 是 ECharts 中的工具箱功能,提供了一系列交互式的工具按钮,如刷新图表、保存为图片等。

    • feature:用于配置工具箱中的功能按钮。
    • magicType:其中的 type 属性用于配置图表切换类型的功能按钮。
      通过这样的配置,用户可以在图表中使用 brush 工具在 x 轴进行区域选择,并且可以在工具箱中切换图表类型。
    brush: {toolbox: ['rect', 'clear'],xAxisIndex: 0
    },
    toolbox: {feature: {magicType: {type: ['stack', 'tiled'] },saveAsImage: {},  // 添加保存为图片功能按钮dataView: {},      // 添加数据视图功能按钮restore: {}         // 添加刷新按钮}
    }
    
  • X轴Y轴

    • 关注rotate属性,当坐标轴标签字体过大以至于信息显示不全时,可以通过适当旋转来使其完全显示。
      在这里插入图片描述
      在这里插入图片描述
    xAxis: {data: ['618年-668年','668年至718年', '718年至768年', '768年至818年', '818年至868年', '868年至907年'],name: '年份',nameTextStyle: {  color: '#333',  fontSize: 28  },axisLine: { lineStyle: {color: '#151d29',width: 2},},axisLabel: {textStyle: {color: '#333', fontSize: 28},rotate: 12,  }},yAxis: {name: '人数',nameTextStyle: {  color: '#333',  fontSize: 28},axisLine: {lineStyle: {color: '#151d29',width: 2}},axisLabel: {textStyle: {color: '#333', fontSize: 28}}}
    
  • 数据系列配置:两组数据就命好名字,分别{}配置,中间,连接,整体[]包裹。

    series: [{name: '出生',type: 'bar',barWidth : '35%',barCategoryGap: '0', // 设置柱体无间隔stack: 'one',itemStyle: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#3d8e86' },{ offset: 0.5, color: '#5da39d' },{ offset: 1, color: '#88bfb8' }])},emphasis: {itemStyle: {shadowBlur: 10,shadowColor: 'rgba(0,0,0,0.3)'}},data: [1693, 1813, 2568, 2739, 908, 26]},{name: '死亡',type: 'bar',barWidth : '35%',barCategoryGap: '0', stack: 'one',showBackground: true,itemStyle: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#d2a36c' },{ offset: 0.5, color: '#d5c8a0' },{ offset: 1, color: '#dfd6b8' }])},emphasis: {itemStyle: {shadowBlur: 10,shadowColor: 'rgba(0,0,0,0.3)'}},data: [6258, 9623, 15296, 16672, 17191, 7581]}
    ]
    

🐇字体大小设置总结

  • 标题字体

    title: {textStyle: {fontSize: 34, }
    }
    
  • 坐标轴字体

    • 刻度字体
      xAxis: {axisLabel: {fontSize: 22}
      }
      
    • 坐标轴名称字体
      xAxis: {name: '年份',nameTextStyle: {  color: '#333',  fontSize: 22  }
      }
      
  • 标线字体

    markLine: {label: {fontSize: 22 }
    }
    
  • legend字体

    legend: {textStyle: {  fontSize: 22}
    }
    

  • 完整代码包

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯、编程考级、NOC、全国青少年信息素养大赛—scratch列表考点

1、小小情报员(202309scratch四级24题) 1.准备工作 (1)选择背景 Colorful City; (2)保留角色小猫,选择角色Ballerina。 2.功能实现 (1)角色小猫初始位置…

各分地域如果流量大的情况下 使用什么组网方式最好?V批N还是SDWAN或者其他?

环境: V批N SDWAN MPLS 问题描述: 各分地域如果流量大的情况下 使用什么组网方式最好?V批N还是sdwan或者其他? 解决方案: 当各地域之间的流量较大时,选择合适的组网方式可以提供更好的网络性能和可靠…

东方的博弈论与西方的博弈论

博弈论的本质是研究决策者在互相影响的环境中面临的策略选择问题。它涉及两个或多个决策者之间的冲突和合作,每个决策者根据对其他决策者的行为的预期和自身的利益来制定策略。博弈论的目标是找到最优的策略或解决方案,以实现决策者的最大利益。东方思维…

Linux系统安装Samba服务器

在实际开发中,我们经常会有跨系统之间文件传递的需求,Samba 便是能够在 Windows 和 Linux 之间传递文件的服务,功能也是非常强大和好用,本篇文章将介绍如何在 Linux 系统上安装 Samba 服务,以 CentOS7 系统为例。 一、…

数学建模--Radar图绘制

1.Radar图简介 最近在数学建模中碰见需要绘制Radar图(雷达图)的情况来具体分析样本的各个特征之间的得分与优劣关系,这样的情况比较符合雷达图的使用场景,一般来说,雷达图适用于展示多个维度的数据,并在一个平面上直观地呈现出不同…

【Linux】基本指令收尾

文章目录 日期查找打包压缩系统信息Linux和Windows互传文件 日期 这篇是基本指令的收尾了,还有几个基本指令我们需要说一下 首先是Date,它是用来显示时间和日期 直接输入date的话显示是有点不好看的,所以我们可以根据自己的喜欢加上分隔符&…

【开源】基于JAVA的停车场收费系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 停车位模块2.2 车辆模块2.3 停车收费模块2.4 IC卡模块2.5 IC卡挂失模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 停车场表3.2.2 车辆表3.2.3 停车收费表3.2.4 IC 卡表3.2.5 IC 卡挂失表 四、系统实现五、核心代码…

EtherNet/IP开发:C++开发CIP源代码

① 介绍一下CIP CIP是一种考虑到自动化行业而设计的通用协议。然而,由于其开放性,它可以并且已经应用于更多的领域。CIP网络库包含若干卷: 第1卷介绍了适用于所有网络自适应的CIP的常见方面。本卷包含通用对象库和设备配置文件库&#xff0…

Java基础篇----包机制与JavaDoc

作为一名对技术充满热情的学习者,我一直以来都深刻地体会到知识的广度和深度。在这个不断演变的数字时代,我远非专家,而是一位不断追求进步的旅行者。通过这篇博客,我想分享我在某个领域的学习经验,与大家共同探讨、共…

k8s 部署 Nginx 并代理到tomcat

一、已有信息 [rootmaster nginx]# kubectl get nodes -o wide [rootmaster nginx]# kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 2…

Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)

目录 Spring&#xff08;概述特点IOC原理IOC并操作之bean的XML管理操作&#xff09;概述Spring是轻量级的开源的JavaEE框架Spring可以解决企业应用开发的复杂性Spring有两个核心部分ioc,aopSpring特点 loc(概念和原理)什么是 IOCIOC 底层原理IOC 过程图 IOC&#xff08;接口&am…

HarmonyOS鸿蒙应用开发 (一、环境搭建及第一个Hello World)

万事开头难。难在迈出第一步。心无旁骛&#xff0c;万事可破。没有人一开始就能想清楚&#xff0c;只有做起来&#xff0c;目标才会越来越清晰。--马克.扎克伯格 前言 2024年1月16日&#xff0c;华为目前开启已HarmonyOS NEXT开发者预览版Beta招募&#xff0c;报名周期为1月15…