chart.js - 在 Chart.js 中使用一系列纪元时间戳按月分组
问题描述
我有一个纪元时间戳列表,我想使用 chart.js 绘制图表。
[1432317109519, 1432318109519, 1432319109519, ...]
分组为数据提供给chart.js,即每次在Y轴上是一个单位:
[{
x: 1432317109519,
y: 1
},{
x: 1432318109519,
y: 1
},{
x: 1432319109519,
y: 1
}]
我正在尝试将每个时间戳的 chart.js 舍入到最近的月份:
chartOptions = {
type: 'line',
scales: {
x: {
type: 'time',
time: {
unit: 'month',
round: 'month'
}
}
}
}
这样做时,我的所有 y 轴都是 1。我试图在一个月内获得所有值的总和。我是否误解了“圆形”属性的作用?
解决方案
在 v3 中,您需要一个日期适配器,并且比例已更改,所有更改请阅读迁移指南
const options = {
type: 'line',
data: {
datasets: [{
label: '# of Votes',
data: [{
x: 1632664467243,
y: 5
}, {
x: 1611664467243,
y: 10
}],
borderColor: 'pink'
}]
},
options: {
scales: {
x: {
type: 'time',
time: {
unit: 'month',
round: 'month'
}
}
}
}
}
const ctx = document.getElementById('tt').getContext('2d');
new Chart(ctx, options);
<canvas id="tt"></canvas>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.5.1/chart.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/date-fns/1.30.1/date_fns.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-adapter-date-fns/dist/chartjs-adapter-date-fns.bundle.min.js"></script>
编辑:
从那一刻起适配器自述文件:
npm install moment chartjs-adapter-moment --save
import { Chart } from 'chart.js';
import 'chartjs-adapter-moment';
new Chart()
推荐阅读
- azure-devops - 将测试计划复制到不同的项目
- flutter - 在颤动中增加抽屉的宽度
- php - 如何遍历数组以获取多个要上传的文件
- algorithm - 计算二维数组中的块组总数?
- angular - Angular 或 Bootstrap 中的范围指示器
- php - 在什么情况下 PHP 的错误抑制对未定义的索引不起作用?
- google-apps-script - 用于导入范围的 Google 表格脚本:错误“您无权访问它。”
- flutter - Flutter Listview问题在顶部添加项目
- delphi - MainMenu:如何按顺序显示所有菜单项,而与窗体大小或调整大小无关?
- python - 如何用字符串列表记录 flask-restplus 响应