新闻中心
使用 Chart.js 创建堆叠式进度条图表

本文将介绍如何使用 Chart.js 库创建一个堆叠式进度条图表,用于展示诸如机器设备状态等随时间变化的指标。通过灵活配置 Chart.js,可以实现自定义颜色和多状态重复显示,满足多样化的数据可视化需求。
Chart.js 是一个流行的 J*aScript 图表库,它提供了多种图表类型,包括柱状图、折线图、饼图等。其强大的可配置性和易用性使其成为前端数据可视化的理想选择。下面将详细介绍如何使用 Chart.js 创建堆叠式柱状图,并应用于显示机器设备状态的场景。
1. 引入 Chart.js
首先,需要在 HTML 文件中引入 Chart.js 库。可以通过 CDN 方式引入,也可以下载 Chart.js 文件并本地引用。
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
2. 创建 Canvas 元素
在 HTML 文件中创建一个 canvas> 元素,用于渲染图表。
<canvas id="myChart"></canvas>
3. 编写 J*aScript 代码
接下来,编写 J*aScript 代码来创建和配置 Chart.js 图表。
秀脸FacePlay
一款集成AI换脸、照片跳舞等多种AI特效玩法的App
124
查看详情
const ctx = document.getElementById('myChart').getContext('2d');
const myChart = new Chart(ctx, {
type: 'bar', // 设置图表类型为柱状图
data: {
labels: ['0:00', '1:00', '2:00', '3:00', '4:00', '5:00'], // 设置 x 轴标签,例如时间点
datasets: [{
label: '运行', // 设置数据集标签
data: [10, 20, 15, 25, 22, 30], // 设置数据集数据
backgroundColor: 'green', // 设置背景颜色
stack: 'Stack 0' // 设置堆叠组
}, {
label: '空闲',
data: [5, 10, 8
, 12, 7, 15],
backgroundColor: 'blue',
stack: 'Stack 0'
}, {
label: '故障',
data: [2, 3, 1, 4, 2, 1],
backgroundColor: 'red',
stack: 'Stack 0'
}]
},
options: {
scales: {
x: {
stacked: true // 启用 x 轴堆叠
},
y: {
stacked: true // 启用 y 轴堆叠
}
}
}
});代码解释:
- type: 'bar':指定图表类型为柱状图。
- data.labels:定义 x 轴的标签,这里使用时间点作为示例。
- data.datasets:定义数据集,每个数据集代表一种状态(例如:运行、空闲、故障)。
- label:数据集的标签,用于图例显示。
- data:数据集的数据,表示每个时间点该状态的持续时间或占比。
- backgroundColor:数据集的背景颜色,用于区分不同的状态。
- stack:将数据集分配到同一个堆叠组,确保它们在同一个柱状图上堆叠显示。
- options.scales.x.stacked: true 和 options.scales.y.stacked: true:启用 x 轴和 y 轴的堆叠模式。
4. 自定义颜色和状态重复显示
根据实际需求,可以自定义颜色和状态重复显示。例如,可以使用不同的颜色表示不同的状态,并在同一个时间段内多次使用相同的颜色来表示状态的切换。
const myChart = new Chart(ctx, {
// ...
data: {
labels: ['0:00', '1:00', '2:00', '3:00', '4:00', '5:00'],
datasets: [{
label: '运行',
data: [10, 0, 15, 0, 22, 0], // 运行状态只在特定时间点出现
backgroundColor: 'green',
stack: 'Stack 0'
}, {
label: '空闲',
data: [0, 10, 0, 12, 0, 15], // 空闲状态只在特定时间点出现
backgroundColor: 'blue',
stack: 'Stack 0'
}, {
label: '故障',
data: [0, 0, 0, 0, 0, 0], // 故障状态只在特定时间点出现
backgroundColor: 'red',
stack: 'Stack 0'
},
{
label: '运行',
data: [0, 20, 0, 25, 0, 30], // 运行状态只在特定时间点出现
backgroundColor: 'green',
stack: 'Stack 0'
}]
},
// ...
});注意事项:
- 确保所有需要堆叠的数据集都分配到同一个 stack 组。
- 根据实际数据调整 data 数组的值,以反映正确的状态持续时间和占比。
- 可以通过修改 options 对象中的其他属性来进一步自定义图表的外观和行为,例如调整图例的位置、添加标题等。
总结:
通过使用 Chart.js 库,可以轻松创建堆叠式柱状图,并将其应用于展示机器设备状态等随时间变化的指标。通过灵活配置 Chart.js,可以实现自定义颜色和多状态重复显示,满足多样化的数据可视化需求。 这种方式能够清晰地展示不同状态的持续时间和占比,帮助用户更好地了解设备运行情况。
以上就是使用 Chart.js 创建堆叠式进度条图表的详细内容,更多请关注其它相关文章!
# 持续时间
# seo内容优化总会易 速达
# 山西seo工具怎么选
# 深圳高端网站建设费用
# 齐河网站优化哪家强
# 抖音不能营销推广吗
# 怎么做涨粉素材网站推广
# 双辽网站优化排名
# 开封企业网站优化平台
# 网络营销推广网站分类
# 南昌大型网站seo
# 可以实现
# 柱状
# 可以通过
# 机器设备
# javascript
# 进度条
# 柱状图
# 置顶
# 只在
# 自定义
# red
# canva
# .net
# 数据可视化
# cdn
# 前端
# js
# html
# java
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程
一加 Nord 5 隐私权限异常_一加 Nord 5 系统安全优化
精准捕获:如何在页面中监听除特定元素外的所有点击事件
如何修改开机登录密码_Windows账户安全设置超详细教程【必学】
在Socket.IO连接中实现Access Token自动更新与动态重连
html怎么在cmd下运行php文件_cmd运行html中php文件方法【教程】
cad如何更改注释性对象的比例_cad注释性比例调整方法
Go与Ruby之间实现AES加密互通:CFB模式下的密钥长度匹配策略
Promise错误处理:在catch后终止链式then执行的策略
Flexbox布局实践:实现粘性导航栏与底部固定页脚
漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口
Win11如何开启讲述人功能 Win11屏幕阅读器(讲述人)开启与关闭【教程】
C++如何使用AddressSanitizer(ASan)_C++调试工具中检测内存访问错误的利器
Lar*el Excel导入时生成自定义递增ID的策略与实践
解决深度学习模型训练初期异常高损失与完美验证准确率问题
Tailwind CSS line-clamp 布局问题解析与修复指南
实现分段式页面滚动导航:CSS与J*aScript教程
Win10如何清理注册表垃圾 Win10手动清理无效注册表【技巧】
在J*a中如何隐藏复杂性_使用门面模式组织对象交互
如何使用CaptainHook和Composer管理Git钩子_在提交前自动运行代码检查的Composer配置
C++ vector二维数组定义_C++ vector of vector用法
QQ邮箱网页版入口登录 QQ邮箱在线邮箱官方通道
MAC怎么安装Homebrew包管理器_MAC为开发者和高级用户安装命令行工具
HTML转PPT成品工具有哪些?HTML网页转PPT成品工具大全
在Qt QML中通过Python字典动态更新TextEdit内容的教程
铁路12306卧铺选择攻略 铁路12306下铺座位预定技巧
QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口
steam官方入口大全 steam账号注册及操作指南
黑鲨3Pro怎样在相册开漫画风滤镜_iPhone黑鲨3Pro相册开漫画风滤镜【趣味滤镜】
动漫共和国防屏蔽稳定域名-动漫共和国官方正版直达通道
Animex动漫社网入口地址 Animex动漫社网正版在线入口
铃兰之剑为这和平的世界希里技能组及加点推荐
曝R星经典之作开发图 设计简陋但信息密集!
探索高级语言到C/C++的转译路径:以Go为例及内存管理策略
不会效仿卡普空!《铁拳》制作人澄清:不采取赛事付费|直播|
小米Civi 4录制视频过暗_小米Civi 4亮度优化
打开就能玩的植物大战僵尸 植物大战僵尸网页版传送门
漫蛙漫画登录站点 漫蛙2正版漫画快速访问
C#如何安全地从用户上传的XML文件中读取数据? 验证与清理策略
Lar*el头像管理:图片缩放与旧文件删除的最佳实践
Win11怎么设置鼠标指针速度_Win11提高鼠标指针精确度选项
新手怎么开始学化妆 零基础化妆入门教程
高德地图公交到站提醒失败如何解决 高德提醒权限设置
晋江读书网页版在线登录 晋江读书电脑版官网
理解Python模块与全局变量的作用域管理
电脑IP地址怎么查 查看本机IP地址的几种方法
抖音网页版平台入口 抖音网页版官网在线访问教程
学习通网页版快速入口 学习通官网网页版直接打开
汽水音乐在线版入口_汽水音乐网页播放手册
极兔快递快件信息查询系统 极兔快递官网运单号追踪


2025-10-10
浏览次数:次
返回列表
, 12, 7, 15],
backgroundColor: 'blue',
stack: 'Stack 0'
}, {
label: '故障',
data: [2, 3, 1, 4, 2, 1],
backgroundColor: 'red',
stack: 'Stack 0'
}]
},
options: {
scales: {
x: {
stacked: true // 启用 x 轴堆叠
},
y: {
stacked: true // 启用 y 轴堆叠
}
}
}
});