数据可视化-ECharts Html项目实战(6)

 在之前的文章中,我们学习了如何设置散点图、雷达图。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢
数据可视化-ECharts Html项目实战(5)-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_49513817/article/details/136977084?spm=1001.2014.3001.5501今天的文章,会带着大家学习ECharts特殊图标中的漏斗图与仪表图,希望你能有所收获。

目录

一、知识回顾

二、漏斗图

三、仪表盘

 拓展-提示框组件设置


一、知识回顾

首先散点图我们需要将type属性设置为scatter,并且取消图表中的step属性,就像这样:

而在我们的雷达图也是蜘蛛网图的时候,需要定义雷达图的指示器(indicator)数组,并且修改type为radar。

现在之前的知识回顾完了,开始今天的学习吧。

二、漏斗图

设置漏斗图只需要写一个简单的图表然后将type属性更改一下为funnel就行了,如同;

我们运行一下,看看效果:

可以看到,图表就像一个漏斗一样

<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="utf-8">  
    <title>ECharts 仪表盘示例</title>  
    <!-- 引入 ECharts 文件 -->  
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>  
</head>  
<body>  
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->  
    <div id="main" style="width: 600px;height:400px;"></div>  
    <script type="text/javascript">  
        // 基于准备好的dom,初始化echarts实例  
        var myChart = echarts.init(document.getElementById('main'));  
  
        // 指定图表的配置项和数据  
        var option = {  
            tooltip: {  
                trigger: 'item',  
                formatter: '{b}: <br/>平均分: {c} 分'  
            },  
            xAxis: {  
                type: 'value',  
                min: 0,  
                axisLabel: {  
                    formatter: '{value} 分'  
                }  
            },  
            yAxis: {  
                type: 'category',  
                data: ['大数据搭建', '数据可视化', '数据结构', 'Python', 'Linux', 'Java'],  
                axisLabel: {  
                    interval: 0 // 显示全部标签  
                },  
                inverse: true // 翻转y轴,使得最高分在最上面  
            },  
            series: [{  
                type: 'funnel',  
                data: [90, 85, 80, 75, 70, 65], // 各科成绩平均分,自定数据  
                barWidth: '30%',  
                itemStyle: {  
                    normal: {  
                        borderColor: 'rgba(0,0,0,0)',  
                        shadowColor: 'rgba(0, 0, 0, 0.5)',  
                        shadowBlur: 10  
                    }  
                },  
                showBackground: true,  
                backgroundStyle: {  
                    color: 'rgba(220, 220, 220, 0.8)'  
                },  
                label: {  
                    show: true,  
                    position: 'top',  
                    formatter: '{c}'  
                }  
            }]  
        };  
  
  
        // 使用刚指定的配置项和数据显示图表。  
        myChart.setOption(option);  
    </script>  
</body>  
</html>

现在,快去试试吧

三、仪表盘

 设置仪表盘我们需要设置仪表盘的半径,仪表盘的起始角度和结束角度,仪表盘的指针与刻度,将type更改为gauge,就如图中:

                   name: '业务指标',  
                    type: 'gauge',  
                    // 仪表盘的半径,数组的第一项是内半径,第二项是外半径  
                    radius: '50%',  
                    // 仪表盘的起始角度和结束角度  
                    startAngle: 90,  
                    endAngle: -270,  
                    // 仪表盘的指针  
                    axisLine: {  
                        lineStyle: {  
                            width: 10  
                        }  
                    },  
                    // 仪表盘上的刻度  
                    axisTick: {  
                        splitNumber: 10,  
                        length: 12,  
                    },  
                    // 仪表盘上的指针  
                    pointer: {  
                        width: 5  
                    },  
                    // 仪表盘上的数据  
                    detail: {  
                        formatter: '{value}%',  
                        textStyle: {  
                            fontWeight: 'bolder'  
                        }  
                    },  
                    data: [{value: 60, name: '完成率'}]  

现在,将它写入一个完整的盒子中看看效果:

可以看到,一个仪表盘出现了,现在去试试吧。

<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="utf-8">  
    <title>ECharts 仪表盘示例</title>  
    <!-- 引入 ECharts 文件 -->  
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>  
</head>  
<body>  
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->  
    <div id="main" style="width: 800px;height:600px;"></div>  
    <script type="text/javascript">  
        // 基于准备好的dom,初始化echarts实例  
        var myChart = echarts.init(document.getElementById('main'));  
  
        // 指定图表的配置项和数据  
        var option = {  
            tooltip: {  
                formatter: "{a} <br/>{b} : {c}%"  
            },  
            toolbox: {  
                feature: {  
                    restore: {},  
                    saveAsImage: {}  
                }  
            },  
            series: [  
                {  
                    name: '业务指标',  
                    type: 'gauge',  
                    // 仪表盘的半径,数组的第一项是内半径,第二项是外半径  
                    radius: '50%',  
                    // 仪表盘的起始角度和结束角度  
                    startAngle: 90,  
                    endAngle: -270,  
                    // 仪表盘的指针  
                    axisLine: {  
                        lineStyle: {  
                            width: 10 
                        }  
                    },  
                    // 仪表盘上的刻度  
                    axisTick: {  
                        splitNumber: 10,  
                        length: 12,  
                    },  
                    // 仪表盘上的指针  
                    pointer: {  
                        width: 5
                    },  
                    // 仪表盘上的数据  
                    detail: {  
                        formatter: '{value}%',  
                        textStyle: {  
                            fontWeight: 'bolder'  
                        }  
                    },  
                    data: [{value: 60, name: '完成率'}]  
                }  
            ]  
        };  
  
        // 使用刚指定的配置项和数据显示图表。  
        myChart.setOption(option);  
    </script>  
</body>  
</html>

 拓展-提示框组件设置

关键词类型描述
triggerString触发类型。可选值包括:'item'(数据项图形触发,主要在散点图,柱状图等无类目轴的图表中使用),'axis'(坐标轴触发,主要在柱状图、折线图等会使用类目轴的图表中使用),'none'(不触发)。
triggerOnString触发提示框的行为。可选值包括:'mousemove'(鼠标移动时触发),'click'(鼠标点击时触发),'none'(不触发)。
showBoolean是否显示提示框组件,默认为 true
showContentBoolean是否显示提示框内容,默认为 true
alwaysShowContentBoolean是否总是显示提示框内容,而不只是当 trigger 为 'item' 且数据项图形被触发时才显示,默认为 false
showBackgroundBoolean是否显示提示框的背景,默认为 true
backgroundColorString提示框的背景颜色,默认为 rgba(0,0,0,0.8)
borderRadiusNumber提示框边框的圆角,单位为像素,默认为 4
paddingNumber/Array提示框的内边距,单位为像素,可以是单一数值或 [上, 右, 下, 左] 的数组形式,默认为 [5, 10]
textStyleObject提示框文本样式,包括 color(文字颜色)、fontStyle(字体风格)、fontWeight(字体粗细)、fontFamily(字体类型)、fontSize(字体大小)、lineHeight(行高)等属性。
formatterString/Function提示框内容格式器,支持字符串模板和回调函数两种形式。字符串模板使用 {a}{b}{c} 等占位符来引用系列(series)的数据和名称、数据项(data)的值等。回调函数则可以根据参数自定义返回内容。
positionString/Function提示框的位置,可以是固定的字符串值(如 'top''left''right''bottom''inside' 等)或自定义的函数,用于计算提示框的位置。
offsetNumber/Array提示框距离鼠标的位置。可以是单一数值或 [x, y] 的数组形式,单位为像素,默认为 [0, 0]
enterableBoolean鼠标是否可以进入提示框浮层中,默认为 false
confineBoolean是否将提示框限制在图表的区域内,默认为 true
transitionDurationNumber提示框出现的过渡时间,单位为毫秒,默认为 0.4s
transitionEasingString提示框出现时的缓动函数,默认为 'cubicOut'
zlevelNumber提示框的 z-level 值,控制图形绘制在 z 轴上的层级,默认为 0
zNumber提示框的 z 值,同一层级下 z 值越大越会绘制在上层,默认为 2

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

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

相关文章

软考96-上午题-【操作系统】-文件目录

一、文件目录 1-1、定义 为了实现“按名存取”&#xff0c;系统必须为每个文件设置用于描述和控制文件的数据结构&#xff0c;它至少要包括&#xff1a;文件名、存放文件的物理地址。 这个数据结构称为&#xff1a;文件控制块(FCB)&#xff0c;文件控制块的有序集合称为文件…

flutter3_douyin:基于flutter3+dart3短视频直播实例|Flutter3.x仿抖音

flutter3-dylive 跨平台仿抖音短视频直播app实战项目。 全新原创基于flutter3.19.2dart3.3.0getx等技术开发仿抖音app实战项目。实现了类似抖音整屏丝滑式上下滑动视频、左右滑动切换页面模块&#xff0c;直播间进场/礼物动效&#xff0c;聊天等模块。 运用技术 编辑器&#x…

Web前端Html的表单

表单的关键字&#xff1a; form标签表示一个表单区域 action“后端地址” method“提交数据方式:get/post” input 单行输入框 type“text” 文本 name“定义名称 名字自定义” 向后端提交的键 readonly“readonly” 只读&#xff0c;不可修改&#xff0c;但是可以提交 disab…

Django 三板斧、静态文件、request方法

【一】三板斧 【1】HttpResponse &#xff08;1&#xff09;介绍 HttpResponse是Django中的一个类&#xff0c;用于构建HTTP响应对象。它允许创建并返回包含特定内容的HTTP响应。 &#xff08;2&#xff09;使用 导入HttpResponse类 from django.http import HttpResponse创…

C++ unordered_set和unordered_map

哈希 1. unordered_set/unordered_map1.1 背景1.2 unordered_set1.2.1 特性1.2.2 常用方法 1.3 unordered_map1.3.1 特性1.3.2 常用方法 2. 哈希2.1概念2.2 哈希冲突2.2.1哈希函数2.2.2 解决哈希冲突2.2.2.1 闭散列2.2.2.2 开散列 1. unordered_set/unordered_map 1.1 背景 之…

Rust并发编程thread多线程和channel消息传递

安全高效的处理并发是 Rust 诞生的目的之一&#xff0c;主要解决的是服务器高负载承受能力。 并发&#xff08;concurrent&#xff09;的概念是指程序不同的部分独立执行&#xff0c;这与并行&#xff08;parallel&#xff09;的概念容易混淆&#xff0c;并行强调的是"同…

如何理解OSI七层模型?

一、是什么 OSI &#xff08;Open System Interconnect&#xff09;模型全称为开放式通信系统互连参考模型&#xff0c;是国际标准化组织 ( ISO ) 提出的一个试图使各种计算机在世界范围内互连为网络的标准框架 OSI将计算机网络体系结构划分为七层&#xff0c;每一层实现各自…

存储随笔原创科普视频首播~

一周之前&#xff0c;存储随笔创建了B站账号。小编利用上个周末休息时间专门研究了B站视频录制的各种方案。发现并没有想象的很容易&#xff0c;先花了很长时间准备了一个PPT&#xff0c;再准备演讲大纲&#xff0c;最终磕磕绊绊完成了首期原创视频录制&#xff01; 可能不尽如…

PCB布线中晶振电容、电源大小电容、电源电容的设计细节

嵌入式软硬件爱好者 一张手册走天下。嵌入式单片机/Linux/Openwrt/电子电路技术交流分享。//主打一个技术层面的剑走偏锋&#xff0c;直击众人重视和不重视的重点//专注基础&#xff0c;才能走的更远 晶振电容 晶振旁边的电容在电路设计中不是用于滤波的。实际上&#xff0c;…

中国疆域从古至今版图演变,中国历史各个朝代地图大全

一、图片描述 每个朝代都有数十张地图&#xff0c;朝代疆域全图重点区域地图&#xff0c;图片是JPG格式&#xff0c;都是高清地图&#xff0c;行政名称清晰可见&#xff0c;非常适合喜欢历史的朋友。本套历史朝代地图&#xff0c;大小1.32G&#xff0c;18个压缩文件。 二、图…

ShardingSphere水平分表——开发经验(2)

1. 什么场景下分表&#xff1f; 数据量过大或者数据库表对应的磁盘文件过大。 Q&#xff1a;多少数据分表&#xff1f; A&#xff1a;网上有人说1kw&#xff0c;2kw&#xff1f;不准确。 1、一般看字段的数量&#xff0c;有没有包含text类型的字段。我们的主表里面是不允许有t…

C语言数据结构之归并排序

疏雨池塘见 微风襟袖知 目录 归并排序的介绍 基本思想 时间复杂度分析 ⭐归并排序步骤 空间复杂度分析 代码展示 ✨归并排序的非递归 代码展示 总结&#x1f525; 归并排序的介绍 归并排序&#xff0c;是创建在归并操作上的一种有效的排序算法。算法是采用分治法&#xff…

项目1-加法计算器

1.创建项目 2.导入前端代码 2.1 static包内 2.2 测试前端代码是否有误 显示成功说明无误 2.3 定义用户接口 请求路径&#xff1a;calc/sum 请求方式&#xff1a;GET/POST 接口描述&#xff1a;计算两个整数相加 请求参数: 参数名类型是否必须备注num1Integer是参与计算的第…

瑞萨杯(一)

基础信息 RA6M5&#xff1a;ARM V8架构&#xff0c;24MHz外置晶振&#xff0c;200MHz主频 SCI&#xff08;Serial Communications Interface&#xff09;&#xff0c;意为串行通信接口 参考链接&#xff1a; 【瑞萨RA系列FSP库开发】RASCKeil的环境搭建_瑞萨ra mdk-CSDN博客…

主干网络篇 | YOLOv8改进之在主干网络中引入密集连接卷积网络DenseNet

前言:Hello大家好,我是小哥谈。DenseNet(密集连接卷积网络)是一种深度学习神经网络架构,它在2017年由Gao Huang等人提出。DenseNet的核心思想是通过密集连接(dense connection)来促进信息的流动和共享。在传统的卷积神经网络中,每个层的输入只来自于前一层的输出。而在…

C语言之strsep用法实例(八十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

【Python音视频技术】Python音视频技术系列文章2---视频提取音频转换文字

接上一篇文章 【Python音视频技术】玩AI视频创作引发写Python音视频技术系列文章1---视频添加字幕 之前我想在视频中提取音频转换文字&#xff0c; 当时是用 PC剪映专业版搞定的&#xff0c; 详情见 【AI应用】模仿爆款视频二次创作短视频操作步骤 。 这里我准备用pytho…

铁道障碍物检测6种YOLOV8

铁道障碍物检测6种&#xff0c;采用YOLOV8训练&#xff0c;得到PT模型&#xff0c;然后转换成ONNX模型&#xff0c;OPENCV调用 铁道障碍物检测6种YOLOV8

android Fragment 生命周期 方法调用顺序

文章目录 Introlog 及结论代码 Intro 界面设计&#xff1a;点击左侧按钮&#xff0c;会将右侧 青色的RightFragment 替换成 黄色的AnotherRightFragment&#xff0c;而这两个 Fragment 的生命周期方法都会打印日志。 所以只要看执行结果中的日志&#xff0c;就可以知道 Fragme…

Linux 系统 快速卸载docker

(卸载前一定要做好相关数据的备份) 卸载&#xff1a; 第一种卸载方法 1、查询docker安装过的包&#xff1a; yum list installed | grep docker 2、删除安装包&#xff1a; yum remove docker-ce.x86_64 ddocker-ce-cli.x86_64 -y 3、删除镜像/容器等 rm -rf /var/lib/dock…