echarts_柱状图+漏斗图

目录

      • 柱状图(bar)
        • 需求
          • [1] 复制案例
          • [2] 修改类目轴方向
          • [3] 修改数据渲染方向
          • [4] 修改坐标轴文本样式
      • 漏斗图(funnel)
          • 漏斗图的形状

柱状图(bar)

需求

在这里插入图片描述
如上图,做一个横向柱状图,后端返回的数据是从小向大排列的数据,希望能够按照顺序进行展示。

[1] 复制案例
  • 复制一个Echarts官网案例,将数据替换为想要渲染的数据
    在这里插入图片描述
[2] 修改类目轴方向
  • [2] 将[1]图柱状图改为横向柱状图

    xAxis与yAxis是直角坐标轴x/y轴的配置项;

    在xAxis与yAxis配置项中都存在type属性,属性值有4个分别如下

    • category 类目轴 (x轴默认值)
    • value 数值轴 (y轴默认值)
    • time 时间轴
    • log 对数轴

    data属性是类目数据,若是(xAxis/yAxis)没有设置type属性,但是设置了axis.data则认为当前配置项的type为category

    示例
    在这里插入图片描述

[3] 修改数据渲染方向

在这里插入图片描述
从上图可以看出数据渲染方向是沿着y轴往上进行渲染,但是违背我的初衷,我希望用户能够看到数据的正想排列过程。

xAxis/yAXis配置项中存在inverse属性 -> 是否是反向坐标轴(数据是否反向渲染)

在这里插入图片描述
配置inverse属性为true就达到目的了。

[4] 修改坐标轴文本样式

axis.data是一个数组,存储类目数据。
数组的每个元素:String/Object

  • 若是不需要修改文本样式,则元素为String格式
  • 若是需要修改文本样式,则元素为Object格式

在这里插入图片描述
如上图,仅需要修改‘衬衫’的字体,那么data中第一个元素为Object类型,其余元素类型为String类型。

在本案例中需要将y轴坐标文本全部调整字体为16px,因此可以进行如下调整

const value =  ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
const data = value.map(item=>({
  value: item,
  textStyle:{
    fontSize:16,
  }
}))
option = {
  yAxis: {
    data,
    inverse:true
  },
  xAxis:{},
  series: [
    {
      data: [200, 180, 120, 80, 30, 10],
      type: 'bar'
    }
  ]
}

漏斗图(funnel)

option = {
  series: [
    {
      type: 'funnel', // 图表类型
      left: '10%',
      top: 60,
      bottom: 60,
      width: '80%',
      min: 0, // value最小值
      max: 100, // value最大值
      minSize: '0%', // 最小值映射的宽度(最小宽度)
      maxSize: '100%', // 最大值映射块的宽度(最大宽度)
      // sort: 数据排列顺序 descending(默认)从大到小排列;ascending:从小到大排列;none:按照data(value属性)值排列
      sort: 'descending', 
      // gap: 图表块与块之间的间距
      gap: 2,
      // label: 图表每块上的文本
      label: {
        show: true, // 是否显示文本(默认true)
        position: 'inside', //  文本显示的位置(默认块右侧)
        formatter: function(d){ // 文本内容,默认name属性
          return d.data.name + '  ' + d.data.num
        }
      },
      // 图表每个块的样式
      itemStyle: {
        // color:'red',   表示每个块都是红色,默认是在option.color中选取颜色
        borderColor: '#fff',
        borderWidth: 1
      },
      // 鼠标hover时块的样式
      emphasis: {
        // 文本样式
        label: {
          fontSize: 20
        }
      },
      // 显示数据
      data: [
        { value: 60, name: 'Visit', num: 5000 },
        { value: 40, name: 'Inquiry', num: 3200 },
        { value: 20, name: 'Order', num: 10 },
        { value: 80, name: 'Click' , num: 6800},
        { value: 100, name: 'Show', num: 10000 }
      ]
    }
  ]
};
漏斗图的形状

在看案例时,发现图表是一个“三角形”的形状,但是在我们实际使用时会发现图表存在变形的情况
在这里插入图片描述

漏斗图的形状是通过data.value属性控制的,若是每个数据的data.value属性的递减/递增不是成比例的就会出线漏斗图三角形变形的情况。

若是想要图形一直是三角形,可以将value值做成递减,在data中添加另一个属性来表示真正的数值(注:若是后端的返回值不是按照顺序返回的,需要先排序!)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于MATLAB的无人机遥感数据预处理与农林植被性状估算教程

详情点击链接:基于MATLAB的无人机遥感数据预处理与农林植被性状估算前言 遥感技术作为一种空间大数据手段,能够从多时、多维、多地等角度,获取大量的农情数据。数据具有面状、实时、非接触、无伤检测等显著优势,是智慧农业必须采…

Redis的4种分布式限流算法

限流 服务系统流量多,的确是一件好事,但是如果过载,把系统打挂了,那大家都要吃席了。 所以,在各种大促活动之前,要对系统进行压测,评估整个系统的峰值QPS,要做一些限流的设置,超过一定阈值,就拒绝处理或者延后处理,避免把系统打挂的情况出现。 限流和熔断有什么区…

Linux 学习记录53(ARM篇)

Linux 学习记录53(ARM篇) 本文目录 Linux 学习记录53(ARM篇)一、内存读写指令1. 在C语言中读取内存2. 指令码及功能3. 格式4. 使用示例5. 寻址方式(1. 前索引方式(2. 后索引方式(3. 自动索引 6.批量寄存器操作指令(1. 操作码(2. 格式(3. 使用示例(4. 地址增长方式>1 ia后缀&…

ELK(elasticsearch+logstash+kibana+beats)

什么是ELK Elasticsearch:Elasticsearch(以下简称ES) 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。 ES是 Elastic Stack 的核心,采用集中式数据存储,可以通过机器学习来…

Kubernetes_1.27.3_Harbor结合Nacos实战

Nacos 实战 作者:行癫(盗版必究) 一:Nacos简介 1.简介 ​ Nacos是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台;Nacos 致力于帮助您发现、配置和管理微服务;Nacos 提供了一组简单易用的特…

Python实现将pdf,docx,xls,doc,wps,zip,xlsx,ofd链接下载并将文件保存到本地

前言 本文是该专栏的第31篇,后面会持续分享python的各种干货知识,值得关注。 在工作上,尤其是在处理爬虫项目中,会遇到这样的需求。访问某个网页或者在采集某个页面的时候,正文部分含有docx,或pdf,或xls,或doc,或wps,或ofd,或xlsx,或zip等链接。需要你使用python自…

260道2023最新网络安全工程师面试题(附答案)

2023年过去了一大半,先来灵魂三连问,年初定的目标完成多少了?薪资涨了吗?女朋友找到了吗? ​好了,不扎大家的心了,接下来进入正文。 由于我之前写了不少网络安全技术相关的文章和回答&#xff…

CentOS 8 GLIBC升级失败系统崩溃抢修实战

CentOS 8 GLIBC升级失败系统崩溃抢修实战 1. 恐怖的问题2. 参考解决方案3. 抢修实战3.1 准备工作3.2 抢修流程3.3 解决启动后Permission Denied3.3.1 参考方案3.3.2 解决 4. 总结 服务器为CentOS 8,支持glibc版本为2.28,但编译一个工具的glibc需求版本为…

【Ceph集群应用】CephFS文件系统之MDS接口详解

CephFS文件系统之MDS接口详解 1.创建CephFS文件系统MDS接口1.1 创建cephfs1.2 基于内核的客户端挂载1.3 基于fuse工具方式的客户端挂载 接上文基于ceph-deploy部署Ceph集群详解 1.创建CephFS文件系统MDS接口 服务端操作 (1)在admin管理节点创建mds服务…

Python测试框架Pytest的基础入门

Pytest简介 Pytest is a mature full-featured Python testing tool that helps you write better programs.The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. 通过官方网站介绍…

音频数据分割单独处理后再拼接出现跳跃间断点的处理方法

+hezkz17进数字音频系统研究开发交流答疑 1如图所示 问题1: 对于一个81920字节的音频文件,如果是分割成小块4096输入(无重叠,均分),在频域上做去噪算法,每4k数据返回到时域上再拼接成80k的处理结果文件,发现处理结果有异常有跳跃间断点,像是频谱泄露?分割也需要有重…

java中使用POI生成Excel并导出

注:本文章中代码均为本地Demo版本,若后续代码更新将不会更新文章 需求说明及实现方式 根据从数据库查询出的数据,将其写入excel表并导出 我的想法是通过在实体属性上写自定义注解的方式去完成。因为我们在代码中可以通过反射的方式去获取实体…

华为申请注册盘古大模型商标;京东推出言犀大模型,率先布局产业应用

7月14日科技新闻早知道,一分钟速览。 1.华为申请注册盘古大模型商标: 据天眼查 App 显示,7 月 7 日,华为技术有限公司申请注册“华为云盘古”、“Huawei Cloud Pangu Models”文字及图形商标,国际分类为网站服务、社…

c基本数据类型

关键字 charshort intintlong intfloatdouble 常量和变量 常量:在程序运行过程中,其值不可改变的量变量:其值可以改变的量称为变量 字符数据 字符常量 直接常量:用单引号括起来,如:‘a’,‘b’.转义字…

zabbix 企业级监控(2) 监控linux主机

目录 配置开始 Zabbix添加linux主机 4.为agent.zabbix.com添加模板 环境: (隔天做的更换了IP,不影响实际操作) IP 192.168.50.50 关闭防火墙规则 更改主机名 [rootlocalhost ~]# vim /etc/hostname agent.zabbix.com [rootloca…

【UE5 多人联机教程】01-创建主界面

目录 工程地址 步骤 参考链接 工程地址 GitHub - UE4-Maple/C_MP_Lobby: 多人大厅教程项目 步骤 1. 先新建一个工程 2. 将下载的工程中的Plugins目录拷贝到自己新建的工程下 3. 打开工程,新建一个游戏实例 这里命名为“GI_Main” 在项目设置中设置游戏实例类为…

科技云报道:数字化转型完成后,制造业如何走向“数智”时代?

科技云报道原创。 随着我国数字化转型行动的深入推进和智能制造工程的大力实施,制造业正朝着“数智”时代迈进,生成式AI被视为推动制造业智能化发展的关键驱动力。 据预测,到2027年,将有30%的制造业采用生成式AI来提升产品研发效…

Android ViewGroup onDraw为什么没调用

ViewGroup,它本身并没有任何可画的东西,它是一个透明的控件,因些并不会触发onDraw,但是你现在给LinearLayout设置一个背景色,其实这个背景色不管你设置成什么颜色,系统会认为,这个LinearLayout上…

上海市静安区财政局领导带队调研合合信息,政企共话科技创新

近日,上海市静安区财政局副局长应文婷一行赴市北高新园区,实地走访科技企业上海合合信息科技股份有限公司(简称“合合信息”),了解公司技术创新成果及产业布局,倾听企业在发展过程中的政策需求。合合信息董…

Linux——认识Linux的目录结构 常用命令 vim命令 权限及其控制

目录 linux的目录结构常用linux的命令ls(list)和llcd 切换目录mkdir 创建文件夹touch命令:创建普通文本文件pwd 显示路径whoamisu:普通--超级账号man:查看手册rm:删除网络命令ifconfig重定向 >>cat 查看文本文件clear清屏hi…