当前位置: 首页 > news >正文

Chart.js 安装使用教程

一、Chart.js 简介

Chart.js 是一个简单而灵活的 JavaScript 图表库,支持 8 种常用图表类型(折线图、柱状图、饼图等),基于 HTML5 Canvas 渲染。它轻量易用,适合快速构建响应式图表,广泛应用于仪表盘、可视化后台、统计图展示等场景。


二、Chart.js 安装方式

2.1 使用 CDN 引入(推荐快速使用)

<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>

2.2 使用 npm 安装(适合前端工程项目)

npm install chart.js --save

在模块中使用:

import Chart from 'chart.js/auto';

三、基本使用示例

3.1 HTML + JavaScript 示例

<canvas id="myChart" width="400" height="200"></canvas>
<script>const ctx = document.getElementById('myChart').getContext('2d');const myChart = new Chart(ctx, {type: 'bar',data: {labels: ['红色', '蓝色', '黄色', '绿色', '紫色', '橙色'],datasets: [{label: '颜色销量',data: [12, 19, 3, 5, 2, 3],backgroundColor: ['rgba(255, 99, 132, 0.6)','rgba(54, 162, 235, 0.6)','rgba(255, 206, 86, 0.6)','rgba(75, 192, 192, 0.6)','rgba(153, 102, 255, 0.6)','rgba(255, 159, 64, 0.6)']}]},options: {responsive: true,scales: {y: {beginAtZero: true}}}});
</script>

四、支持的图表类型

图表类型type 值
折线图line
柱状图bar
饼图pie
环形图doughnut
雷达图radar
极地图polarArea
散点图scatter
气泡图bubble

五、自定义配置项

Chart.js 提供多种可配置项,包括标题、图例、工具提示、布局、动画等。例如:

options: {plugins: {title: {display: true,text: '图表标题'},tooltip: {enabled: true}},animation: {duration: 1000}
}

六、响应式和样式控制

  • 默认响应式:responsive: true
  • 控制大小:通过 <canvas> 容器设置宽高或 CSS
  • 自适应重绘:
window.addEventListener('resize', () => {myChart.resize();
});

七、与框架集成

  • Vue:使用 vue-chartjs
  • React:使用 react-chartjs-2
  • Angular:使用官方 ng2-charts

八、常见问题

Q1: 图表不显示?

  • 确保 <canvas> 元素正确存在并指定宽高
  • 确保在 DOM 加载后再执行 new Chart()

Q2: 图表更新不生效?

使用更新方法:

myChart.data.datasets[0].data = [5, 10, 15, 20];
myChart.update();

九、学习资源推荐

  • Chart.js 官网
  • Chart.js 中文文档
  • 菜鸟教程 Chart.js 教程
  • Chart.js 示例库

本文由“小奇Java面试”原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

在这里插入图片描述

http://www.xdnf.cn/news/1078687.html

相关文章:

  • 【强化学习】深度解析 GRPO:从原理到实践的全攻略
  • 怎样理解:source ~/.bash_profile
  • vscode vim插件示例json意义
  • 电子电气架构 --- SOVD功能简单介绍
  • 如何系统性评估运维自动化覆盖率:方法与关注重点
  • Spark流水线数据探查组件
  • 【字节跳动】数据挖掘面试题0002:从转发数据中求原视频用户以及转发的最长深度和二叉排序树指定值
  • 计算机视觉的新浪潮:扩散模型(Diffusion Models)技术剖析与应用前景
  • 六、软件操作手册
  • 【Python】进阶 - 数据结构与算法
  • Python 高光谱分析工具(PyHAT)
  • Python 数据分析:numpy,说人话,说说数组维度。听故事学知识点怎么这么容易?
  • vue中的toRef
  • C#上位机串口接口
  • docker常见命令
  • 模型预测专题:强鲁棒性DPCC
  • Springboot开发常见注解一览
  • C++ 完美转发(泛型模板函数)
  • CSS外边距合并(塌陷)全解析:原理、场景与解决方案
  • apoc-5.24.0-extended.jar 和 apoc-4.4.0.36-all.jar 啥区别
  • 大数据平台与数据中台:从概念到落地的系统化实践指南
  • Point-LIO代码阅读与解析
  • opencv基础的图像操作
  • 回顾JAVA中的锁机制
  • 2-RuoYi-UI管理平台的启动
  • 少样本学习在计算机视觉中的应用:原理、挑战与最新突破
  • 第8章网络协议-NAT
  • ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
  • HTTP 协议深入理解
  • 【51单片机单595点阵8按键调节速度方向花样】2022-6-18