ECharts 数据可视化 入门基本知识 下载安装常用的图表 【1】

ECharts一个基于 JavaScript 的开源可视化图表库,即将数据以图形或图像的方式展现成在屏幕上显示出来,这种方式称为数据可视化。数据可视化有助于我们分析数据,帮助我们更深入更直观的理解数据。今天回顾顺便总结一下echarts的基本知识,有问题请大家评论区交流,谢谢。

目录

一.了解ECharts 

二.安装使用

2.1 新建项目并初始化

2.2 安装echarts 

2.3 编码 

2.4 图标成功在项目中使用

三.常用的图表类型

1.柱状图

1.1普通柱状图

 1.2 堆叠柱状图

2.折线图

2.1基本的折线图

​2.2堆叠折线图

3.饼图

3.1 基础饼图和圆环 

3.2 显示高亮扇形对应的文字

3.3 南丁格尔(玫瑰图) 

 4.散点图

四.图标配置

1 图标大小容器

2.主题

3 直接的样式设置


一.了解ECharts 

ECharts 的官方定义:一个基于 JavaScript 的开源可视化图表库。其有丰富的图表类型、强大的渲染引擎、专业多维度的数据分析、灵活配置的可视化设计等。

 上面取了部分图标,图标类型非常丰富,还有很多炫酷的图标,主要是还免费。

二.安装使用

2.1 新建项目并初始化

2.2 安装echarts 

在项目中引入echarts。你可以使用如下命令通过 npm 安装 ECharts

关于Node.js安装下载配置请参考:Node.js 下载安装配置 超详细-CSDN博客

npm install echarts --save

 安装完成后在package.json文件中会有echarts的版本信息,如图所示:

 

新建了一个echarts文件夹 :上面已标注

  • public/index是图表对应的html,
  • src/tools/index.js是图标对应的js文件

src/main.js文件是webpack的入口文件,关于webpack入门基本知识及案例前面回顾过了,有需要的可以查看:Webpack入门基础知识及案例-CSDN博客

2.3 编码 

在js文件中引入echarts。这里是index.js代码

import * as echarts from 'echarts';// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 绘制图表
export const echarts1 = myChart.setOption({title: {text: 'ECharts 入门示例'},tooltip: {},xAxis: {data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']},yAxis: {},series: [{name: '销量',type: 'bar',data: [5, 20, 36, 10, 10, 20]}]
});

main.js 文件和webpack.config.js文件代码:这里直接截图了,webpack基础知识里面可以复制代码。

2.4 图标成功在项目中使用

打包项目 npm run build 后 执行index.html文件我们可以看到一个图表。

现在我们已经可以在项目中使用echarts为我们提供的丰富炫酷的图标了。 接下来看一些图标的配置信息吧。

三.常用的图表类型

常用的图标类型有柱状图,折线图,饼图和散点图。

1.柱状图
1.1普通柱状图

设置多列数据

单个柱状图和单组柱状图设置样式

另外还有barWidth、barGap、barCategoryGap、showBackground等设置柱条样式。

  

 1.2 堆叠柱状图

使用 EChart 实现堆叠柱状图的方法非常简单,只需要给一个系列的 stack 值设置一个字符串类型的值,这一个值表示该系列堆叠的类别。也就是说,拥有同样 stack 值的系列将堆叠在一组

2.折线图
2.1基本的折线图

空数据和0一样吗?空数据如何展示?

 2.2堆叠折线图

3.饼图
3.1 基础饼图和圆环图
3.2 显示高亮扇形对应的文字
 series: [{type: 'pie', //类型是扇形饼图radius: ['50%', '70%'], // 前面那个是内径的大小,后面这个值是外径的大小avoidLabelOverlap: false,  //设置为false 是表示标签的位置默认显示到圆环中间位置,不需要echarts调整label: {show: false,  //标签设置为不显示position: 'center'},labelLine: {   //标签线也不显示show: false},emphasis: {  //设置高亮扇形文字label: {show: true,fontSize: '30',fontWeight: 'bold'}},data: [{ value: 335, name: 'A' },{ value: 310, name: 'B' },{ value: 234, name: 'C' },{ value: 135, name: 'D' },{ value: 1548, name: 'E' }]}]
};

3.3 南丁格尔(玫瑰图) 

 4.散点图

 svg图形的散点图示例。

四.图标配置

1 图标大小容器

1.1 html默认设置 div标签容器的 width和height大小。

<div id="main" style="width: 600px;height:400px;"></div>

1.2 初始化的时候指定大小

  var myChart = echarts.init(document.getElementById('main'), null, {width: 600,height: 400});

 1.3 监听图表容器的大小并改变图表大小

<style>#main,html,body {width: 100%;}#main {height: 400px;}
</style>
<div id="main"></div>
<script type="text/javascript">var myChart = echarts.init(document.getElementById('main'));window.addEventListener('resize', function() {myChart.resize();});
</script>

1.4 为图表设置特定的大小

myChart.resize({width: 800,height: 400
});

容器节点被销毁以及被被重建时

在图表容器被销毁之后,调用 echartsInstance.dispose 销毁实例,在图表容器重新被添加后再次调用 echarts.init 初始化。在容器节点被销毁时,总是应调用 echartsInstance.dispose 以销毁实例释放资源,避免内存泄漏。

2.主题

三种更换主题方式

  1.  默认主题设置
  2. 如果主题保存为 JSON 文件,则需要自行加载和注册
  3. 如果保存为 UMD 格式的 JS 文件,文件内部已经做了自注册,直接引入 JS

3 直接的样式设置

我们可以在例子中找到开箱即用的图标,来直接设置图形元素的颜色、线宽、点的大小、标签的文字、标签的样式等等。

代码可以去看实例中的完整代码。 这里主要看几个设置

3.1 高亮的样式:emphasis

option = {series: {type: 'scatter',// 普通样式。itemStyle: {// 点的颜色。color: 'red'},label: {show: true,// 标签的文字。formatter: 'This is a normal label.'},// 高亮样式。emphasis: {itemStyle: {// 高亮时点的颜色。color: 'blue'},label: {show: true,// 高亮时标签的文字。formatter: 'This is a emphasis label.'}}}
};

关于ECharts的下载安装,在项目中的使用,也回顾了一些基本的图表和设置。 echarts丰富的图标以及功能远不止这些,其他关于echarts的知识请参考官网:Documentation - Apache ECharts

另一篇回顾了echarts的点击事件以及回调函数、服务器渲染数据、异步获取数据等基础知识请参考:ECharts数据可视化 数据集与事件 入门基础知识【2】-CSDN博客

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

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

相关文章

C++密码管理器

先问一句 最近有几个关注我的原力等级为0或-1&#xff0c;文章全是转载&#xff0c;转载时间基本都在2021年&#xff0c;而且关注了很多人&#xff0c;这些是僵尸粉吗&#xff1f; 文末有投票&#xff0c;麻烦参与一下谢谢 实现功能列表 暂时还没做加密功能 打算用openssl/a…

HTTPS通讯全过程

HTTPS通讯全过程 不得不说&#xff0c;https比http通讯更加复杂惹。在第一次接触https代码的时候&#xff0c;不知道为什么要用用证书&#xff0c;公钥是什么&#xff1f;私钥是什么&#xff1f;他们作用是什么&#xff1f;非对称加密和对称加密是啥&#xff1f;天&#xff0c;…

可视化大屏入口界面,炫酷科技又不失简洁时尚。

可视化大屏界面&#xff0c;大家见到很多了&#xff0c;当可视化大屏是多个系统的融合&#xff0c;而且彼此又相互独立&#xff0c;就需要设计一个入口页面&#xff0c;便于分流客户&#xff0c;这次我给大家分享一批。 设计可视化大屏入口界面时&#xff0c;可以结合炫酷科技…

startData

某音startData 记得加入学习群&#xff1a; python爬虫&js逆向3 714283180

leetcode算法题之N皇后

N皇后也是一道很经典的问题&#xff0c;问题如下&#xff1a; 题目地址 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击。 给你…

记录Java使用websocket

实现场景&#xff1a;每在小程序中添加一条数据时&#xff0c;后台将主动推送一个标记给PC端&#xff0c;PC端接收到标记将进行自动播放音频。 import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import or…

游戏管理系统

目录 Java程序设计课程设计 游戏管理系统 1系统简介 1.1需求分析 1.2 编程环境与工具 2系统总体设计 2.1 系统的功能模块图。 2.2 各功能模块简介。 3主要业务流程 &#xff08;1&#xff09;用户及管理员登录流程图 &#xff08;2&#xff09;信息添加流程 &#x…

即插即用的3D神经元注意算法

在快速发展的人工智能领域&#xff0c;科技的进步往往源于对复杂问题的突破性解决方案。如今&#xff0c;我们正站在一种激动人心的技术创新的前沿——即插即用的3D神经元注意算法。这一前沿技术不仅为计算神经科学提供了全新的视角&#xff0c;也为人工智能的未来打开了新的大…

Python教程(十四):Requests模块详解

目录 专栏列表前言&#xff1a;安装 Requests查看包安装情况&#xff1a; RESTful 介绍RESTful API设计原则示例 基本用法1. 查询ID为1的用户&#xff08;GET&#xff09;2. 创建新用户&#xff08;POST&#xff09;3. 更新ID 为 1 的用户&#xff08;PUT&#xff09;4. 删除ID…

18. 基于ES实战海量数据检索

18. 基于ES实战海量数据检索 一. 概述二. Elasticsearch 全文检索1. 分布式搜索引擎2. 搜索引擎种类3. 倒排索引三. elastic使用1. 官网介绍2. docker安装3. elasticsearch-head工具4. 分词与内置分词4.1 内置分词器(了解即可)4.2 `IK`中文分词器三. 整合SpringCloud1. 基础配置…

计算函数(c语言)

1.描述 //小乐乐学会了自定义函数&#xff0c;BoBo老师给他出了个问题&#xff0c;根据以下公式计算m的值。 // //其中 max3函数为计算三个数的最大值&#xff0c;如&#xff1a; max3(1, 2, 3) 返回结果为3。 //输入描述&#xff1a; //一行&#xff0c;输入三个整数&#xff…

视频汇聚/安防综合管理系统EasyCVR非管理员账户能调用分配给其他用户的通道是什么原因?

视频汇聚/安防综合管理系统EasyCVR视频监控平台&#xff0c;作为一款智能视频监控综合管理平台&#xff0c;凭借其强大的视频融合汇聚能力和灵活的视频能力&#xff0c;在各行各业的应用中发挥着越来越重要的作用。平台不仅具备视频资源管理、设备管理、用户管理、网络管理和安…

超精细CG杰作:8K壁纸级官方艺术插画,展现极致美丽与细节的汉服女孩

极致精美的数字艺术杰作&#xff1a;8K壁纸级别的官方插画&#xff0c;展现超高清细节与和谐统一的美感&#xff0c;女孩的精致面容与眼神在光影下熠熠生辉&#xff0c;汉服主题下的超高分辨率作品&#xff0c;文件巨大&#xff0c;细节丰富&#xff0c;令人惊叹。 正向提示词…

Android gradle 构建

Understanding Tasks - Gradle task kapt 是 Kotlin 语言的注解处理器&#xff0c;它是 Android Studio 中用于处理 Kotlin 注解的工具。它通过在编译期间生成代码来增强 Kotlin 代码的功能。需要 Kotlin 编译器来解析和处理注解&#xff1b;使用 APT 来生成代码&#xff0c…

【初阶数据结构】链表(附题)

目录 一、顺序表的问题及思考 二、单链表 2.1链表的概念及结构 2.2.单链表的实现 2.2.1.节点的定义 2.2.2.链表的打印 2.2.3.头部插入删除/尾部插入删除 a.创建节点 b.尾插 c.头插 d.尾删 e.头删 2.2.4.查找数据 2.2.5.在指定位置之前插入数据 2.2.6删除pos节点 …

每日OJ_牛客_DP3跳台阶扩展问题

目录 DP3跳台阶扩展问题 题解代码1&#xff08;dp&#xff09; 题解代码2&#xff08;找规律&#xff09; DP3跳台阶扩展问题 跳台阶扩展问题_牛客题霸_牛客网 题解代码1&#xff08;dp&#xff09; 假定第一次跳的是一阶&#xff0c;那么剩下的是n-1个台阶&#xff0c;跳法…

矩阵中的最大得分(Lc3148)——动态规划

给你一个由 正整数 组成、大小为 m x n 的矩阵 grid。你可以从矩阵中的任一单元格移动到另一个位于正下方或正右侧的任意单元格&#xff08;不必相邻&#xff09;。从值为 c1 的单元格移动到值为 c2 的单元格的得分为 c2 - c1 。 你可以从 任一 单元格开始&#xff0c;并且必须…

Spring由哪些模块组成?

Spring由哪些模块组成&#xff1f; 简单描述则是主要由以下几个模块组成&#xff1a; Spring框架采用的是分层架构&#xff0c;它一系列的功能要素被分成20个模块&#xff0c;这些模块大体分为Core Container、Data Access/Integration、Web、AOP(Aspect Oriented Programmi…

Spring:IOC的详解☞Bean的实例化、Bean的生命周期

1、Bean基础配置 bean的基础配置&#xff1a; <bean id"" class""/> Bean的别名&#xff1a;name属性 Bean的作用范围&#xff1a;scope配置 使用bean的scope属性可以控制bean的创建是否为单例&#xff1a; singleton 默认为单例prototype 为非单…