async function getChartData() { const days = await api.runOnBackend(() => { const notes = api.getNotesWithLabel('体重'); const days = []; for (const note of notes) { const date = note.getLabelValue('dateNote'); const weight = parseFloat(note.getLabelValue('体重')); if (date && weight) { days.push({ date, weight }); } } days.sort((a, b) => a.date > b.date ? 1 : -1); return days; }); const datasets = [ { label: "体重 (kg)", backgroundColor: 'red', borderColor: 'red', data: days.map(day => day.weight), fill: false, spanGaps: true, datalabels: { display: false }, tension: 0.3 } ]; return { datasets: datasets, labels: days.map(day => day.date) }; } const ctx = api.$container.find("canvas")[0].getContext("2d"); new chartjs.Chart(ctx, { type: 'line', data: await getChartData() });