分享7个常用的echarts示例
bigegpt 2025-01-20 10:56 7 浏览
1、对于位置不够显示的坐标值,使用斜显示;
“xAxis>axisLabel>rotate”设置倾斜角度;
xAxis: {
type: 'category',
axisLabel: {
color: '#b8e8fd',
interval: 0,
rotate: 30
},
axisLine: {
lineStyle: {
color: '#8dc1d8'
}
},
axisTick: {
show: false
},
data: totalValueData.xData
}
2、对于坐标值比较长的名称,使用换行显示;
“xAxis>axisLabel>formatter”设置换行格式;
formatter: function(params) {
var newParamsName = ""; // 最终拼接成的字符串
var paramsNameNumber = params.length; // 实际标签的个数
var provideNumber = 4; // 每行能显示的字的个数
var rowNumber = Math.ceil(paramsNameNumber / provideNumber); // 换行的话,需要显示几行,向上取整
/**
* 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
*/
// 条件等同于rowNumber>1
if (paramsNameNumber > provideNumber) {
/** 循环每一行,p表示行 */
for (var p = 0; p < rowNumber; p++) {
var tempStr = ""; // 表示每一次截取的字符串
var start = p * provideNumber; // 开始截取的位置
var end = start + provideNumber; // 结束截取的位置
// 此处特殊处理最后一行的索引值
if (p == rowNumber - 1) {
// 最后一次不换行
tempStr = params.substring(start, paramsNameNumber);
} else {
// 每一次拼接字符串并换行
tempStr = params.substring(start, end) + "\n";
}
newParamsName += tempStr; // 最终拼成的字符串
}
} else {
// 将旧标签的值赋给新标签
newParamsName = params;
}
//将最终的字符串返回
return newParamsName
}
3、对于坐标值超长的名称,使用省略号+移上去显示;
“xAxis>axisLabel>formatter”设置省略号格式;
增加“tooltip”,移上去显示详细内容;
formatter: function(params) {
var newParamsName = ""; // 最终拼接成的字符串
params = params.length <= 6 ? params : params.substring(0, 4) + '...';
var paramsNameNumber = params.length; // 实际标签的个数
var provideNumber = 7; // 每行能显示的字的个数
var rowNumber = Math.ceil(paramsNameNumber / provideNumber); // 换行的话,需要显示几行,向上取整
/**
* 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
*/
// 条件等同于rowNumber>1
if (paramsNameNumber > provideNumber) {
/** 循环每一行,p表示行 */
for (var p = 0; p < rowNumber; p++) {
var tempStr = ""; // 表示每一次截取的字符串
var start = p * provideNumber; // 开始截取的位置
var end = start + provideNumber; // 结束截取的位置
// 此处特殊处理最后一行的索引值
if (p == rowNumber - 1) {
// 最后一次不换行
tempStr = params.substring(start, paramsNameNumber);
} else {
// 每一次拼接字符串并换行
tempStr = params.substring(start, end) + "\n";
}
newParamsName += tempStr; // 最终拼成的字符串
}
} else {
// 将旧标签的值赋给新标签
newParamsName = params;
}
//将最终的字符串返回
return newParamsName
}
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'line' // 默认为直线,可选为:'line' | 'shadow'
}
}
4、修改折线图区域的渐变色;
“series>areaStyle”设置渐变色的数据;
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[{
offset: 0,
color: 'rgba(21, 144, 229, 1)'
},
{
offset: 1,
color: 'rgba(21, 144, 229, 0.1)'
}
],
false
),
shadowColor: 'rgba(21, 144, 229, 0.1)',
shadowBlur: 10
}
}
5、饼图中间增加显示的内容;
“title”设置内容、位置和颜色等;
title: [{
text: '合计总数',
x: '29%',
top: '42%',
textStyle: {
color: '#5bb9fc',
fontSize: size_obj.s12
}
}, {
text: totalValue,
x: '30%',
top: '50%',
textStyle: {
fontSize: size_obj.s14,
color: '#fff'
},
}]
6、实现三色仪表盘;
全代码如下;
var chartDom01 = document.getElementById('gauge-1');
var myChart01 = echarts.init(chartDom01);
var option01;
option01 = {
title: {
text: '溶解氧(mg/L)',
textStyle: {
color: '#b8e8fd',
fontSize: 12,
fontWeight: 'normal'
},
top: 18
},
series: [{
type: 'gauge',
splitNumber: 1,
radius: '93%',
center: ["50%", "52%"],
startAngle: 180,
endAngle: 0,
min: 0,
max: 50,
pointer: {
show: true,
width: 7,
length: "60%",
borderColor: '#000',
borderWidth: '10',
},
axisLine: {
show: true,
lineStyle: {
width: 36,
color: [
[0, 'transparent'],
[0.333333, '#ffb345'],
[0.343333, 'transparent'],
[0.666666, '#19aced'],
[0.676666, 'transparent'],
[1, '#fa7383']
],
borderColor: '#000',
borderWidth: '10',
},
},
axisLabel: {
show: true,
color: "#fff",
fontSize: 12,
distance: -14,
padding: [30, 0, 0, 0],
// formatter: function(value) {
// return value.toFixed(0);
// },
}, //刻度标签。
axisTick: {
show: false,
}, //刻度样式
splitLine: {
show: false,
length: "28%",
lineStyle: {
color: "#fff",
width: 2,
},
}, //分隔线样式
detail: {
show: true,
formatter: ['{a|溶解氧}', '{value}'].join('\n'),
fontSize: 20,
color: '#15cd96',
width: '100%',
height: '-320%',
padding: [-300, 0, 0, 0],
rich: {
a: {
color: '#fff',
fontSize: 12,
padding: [10, 0, 10, 0],
}
}
},
title: {
show: false
},
data: [{
value: 2.77
}]
// data: DOData
}]
};
myChart01.clear();
option01 && myChart01.setOption(option01);
7、实现数据定时切换,适合多数据无法全显示情况;
全代码如下;
var x_allData = ['晗宝SVANA的小店1', '晗宝SVANA的小店2', '晗宝SVANA的小店3', '晗宝SVANA的小店4', '晗宝SVANA的小店5', '晗宝SVANA的小店6', '晗宝SVANA的小店7', '晗宝SVANA的小店8', '晗宝SVANA的小店9', '晗宝SVANA的小店10', '晗宝SVANA的小店11', '晗宝SVANA的小店12'];
var y_allData = [535, 452, 348, 214, 119, 200, 352, 148, 247, 150, 250, 180];
var xData, yData;
// 初始化
xData = x_allData.slice(0, 5);
yData = y_allData.slice(0, 5);
updateChart(xData, yData)
// 循环切换数据
var n = Math.ceil(x_allData.length / 5); // 向上取整
var cur = 2,
start, end;
var timer = setInterval(function() {
if (cur > n) {
cur = 1;
};
start = (cur - 1) * 5;
end = cur * 5;
xData = x_allData.slice(start, end);
yData = y_allData.slice(start, end);
updateChart(xData, yData);
cur++;
console.log(cur)
}, 3000);
// 更新图表
function updateChart(xData, yData) {
var myChart_sxyy = echarts.init(document.getElementById('sxyy'));
var option_sxyy = {
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'line' // 默认为直线,可选为:'line' | 'shadow'
}
},
grid: {
left: '5%',
right: '5%',
bottom: 0,
top: '5%',
containLabel: true
},
xAxis: {
show: false,
type: 'value'
},
yAxis: [{
type: 'category',
inverse: true,
axisLabel: {
show: true,
textStyle: {
color: '#fff',
margin: 12,
fontSize: 12,
lineHeight: 15
}
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: false
},
data: xData
}, {
type: 'category',
inverse: true,
axisTick: 'none',
axisLine: 'none',
show: true,
axisLabel: {
textStyle: {
color: '#ffffff',
fontSize: 12
},
formatter: function(value) {
return value.toLocaleString();
},
},
data: yData
}],
series: [{
name: '预约量',
type: 'bar',
zlevel: 1,
itemStyle: {
normal: {
barBorderRadius: 30,
color: new echarts.graphic.LinearGradient(
0,
0,
1,
0,
[{
offset: 0,
color: 'rgba(57,89,255, 1)'
},
{
offset: 1,
color: 'rgba(46,200,207,1)'
}
],
false
)
},
},
barWidth: 15,
data: yData
},
{
name: '最大值',
type: 'bar',
barWidth: 15,
barGap: '-100%',
data: [1350, 1350, 1350, 1350, 1350],
itemStyle: {
normal: {
color: 'rgba(24,31,68,1)',
barBorderRadius: 30,
}
},
},
]
};
myChart_sxyy.setOption(option_sxyy, true);
}
- 上一篇:Vue3 使用ECharts
- 下一篇:Qt开源作品5-仪表盘交互
相关推荐
- 10w qps缓存数据库——Redis(redis缓存调优)
-
一、Redis数据库介绍:Redis:非关系型缓存数据库nosql:非关系型数据库没有表,没有表与表之间的关系,更不存在外键存储数据的形式为key:values的形式c语言写的服务(监听端口),用来存...
- Redis系列专题4--Redis配置参数详解
-
本文基于windowsX64,3.2.100版本讲解,不同版本默认配置参数不同在Redis中,Redis的根目录中有一个配置文件(redis.conf,windows下为redis.windows....
- 开源一夏 | 23 张图,4500 字从入门到精通解释 Redis
-
redis是目前出场率最高的NoSQL数据库,同时也是一个开源的数据结构存储系统,在缓存、数据库、消息处理等场景使用的非常多,本文瑞哥就带着大家用一篇文章入门这个强大的开源数据库——Redis。...
- redis的简单与集群搭建(redis建立集群)
-
Redis是什么?是开源免费用c语言编写的单线程高性能的(key-value形式)内存数据库,基于内存运行并支持持久化的nosql数据库作用主要用来做缓存,单不仅仅是做缓存,比如:redis的计数器生...
- 推荐几个好用Redis图形化客户端工具
-
RedisPlushttps://gitee.com/MaxBill/RedisPlusRedisPlus是为Redis可视化管理开发的一款开源免费的桌面客户端软件,支持Windows、Linux...
- 关于Redis在windows上运行及fork函数问题
-
Redis在将数据库进行持久化操作时,需要fork一个进程,但是windows并不支持fork,导致在持久化操作期间,Redis必须阻塞所有的客户端直至持久化操作完成。微软的一些工程师花费时间在解决在...
- 你必须懂的Redis十大应用场景(redis常见应用场景)
-
Redis作为一款高性能的键值存储数据库,在互联网业务中有着广泛的应用。今天,我们就来详细盘点一下Redis的十大常用业务场景,并附上Golang的示例代码和简图,帮助大家更好地理解和应用Redis。...
- 极简Redis配置(redis的配置)
-
一、概述Redis的配置文件位于Redis安装目录下,文件名为redis.conf(Windows名为redis.windows.conf,linux下的是redis.conf)你可以通过C...
- 什么是redis,怎么启动及如何压测
-
从今天起咱们一起来学习一下关于“redis监控与调优”的内容。一、Redis介绍Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。...
- 一款全新Redis UI可视化管理工具,支持WebUI和桌面——P3X Redis UI
-
介绍P3XRedisUI这是一个非常实用的RedisGUI,提供响应式WebUI访问或作为桌面应用程序使用,桌面端是跨平台的,而且完美支持中文界面。Githubhttps://github....
- windows系统的服务器快速部署java项目环境地址
-
1、mysql:https://dev.mysql.com/downloads/mysql/(msi安装包)2、redis:https://github.com/tporadowski/redis/r...
- window11 下 redis 下载与安装(windows安装redis客户端)
-
#热爱编程是一种怎样的体验#window11下redis下载与安装1)各个版本redis下载(windows)https://github.com/MicrosoftArchive/r...
- 一款轻量级的Redis客户端工具,贼好用!
-
使用命令行来操作Redis是一件非常麻烦的事情,我们一般会选用客户端工具来操作Redis。今天给大家分享一款好用的Redis客户端工具TinyRDM,它的界面清新又优雅,希望对大家有所帮助!简介Ti...
- 一个.NET开发且功能强大的Windows远程控制系统
-
我们致力于探索、分享和推荐最新的实用技术栈、开源项目、框架和实用工具。每天都有新鲜的开源资讯等待你的发现!项目介绍SiMayRemoteMonitorOS是一个基于Windows的远程控制系统,完...
- Redis客户端工具详解(4款主流工具)
-
大家好,我是mikechen。Redis是大型架构的基石,也是大厂最爱考察内容,今天就给大家重点详解4款Redis工具@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- resize函数 (64)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- mybatis大于等于 (64)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- skip-name-resolve (63)
- linuxlink (65)
- pythonwget (67)
- logstashinput (65)
- hadoop端口 (65)
- vue阻止冒泡 (67)
- oracle时间戳转换日期 (64)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)