質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Chart.js

Chart.jsは、多様なグラフを組み込めるJavaScriptのライブラリ。折れ線グラフや棒グラフ、円グラフ、レーダーチャートなどのグラフの種類が用意されています。HTML5のCanvasを用いて描画され、マークアップも分かりやすく、簡単に編集することが可能です。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

1974閲覧

React/Chart.js/react-chartjs-2 エラー 解決方法がわからない

TomoEno

総合スコア53

Chart.js

Chart.jsは、多様なグラフを組み込めるJavaScriptのライブラリ。折れ線グラフや棒グラフ、円グラフ、レーダーチャートなどのグラフの種類が用意されています。HTML5のCanvasを用いて描画され、マークアップも分かりやすく、簡単に編集することが可能です。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

1グッド

0クリップ

投稿2022/04/20 03:54

以下のURL通りにReactの練習をしていますが、エラーが出てチャートが反映されません。
https://reffect.co.jp/react/react-stock-chart

自分なりに調べたのですが、解決方法がわかりません。教えていただければ幸いです。

以下エラー内容

引用テキスト

chart.esm.js:4892 Uncaught Error: "category" is not a registered scale.
at Registry._get (chart.esm.js:4892:1)
at Registry.getScale (chart.esm.js:4847:1)
at chart.esm.js:5518:1
at each (helpers.segment.js:105:1)
at Chart.buildOrUpdateScales (chart.esm.js:5505:1)
at Chart._updateScales (chart.esm.js:5652:1)
at Chart.update (chart.esm.js:5613:1)
at new Chart (chart.esm.js:5402:1)
at renderChart (chart.tsx:41:1)
at chart.tsx:90:1

chart.tsx:70 Uncaught TypeError: Cannot read properties of undefined (reading 'labels')
at ChartComponent (chart.tsx:70:1)
at renderWithHooks (react-dom.development.js:16141:1)
at updateForwardRef (react-dom.development.js:19968:1)
at beginWork (react-dom.development.js:22391:1)
at HTMLUnknownElement.callCallback (react-dom.development.js:4157:1)
at Object.invokeGuardedCallbackDev (react-dom.development.js:4206:1)
at invokeGuardedCallback (react-dom.development.js:4270:1)
at beginWork$1 (react-dom.development.js:27243:1)
at performUnitOfWork (react-dom.development.js:26392:1)
at workLoopSync (react-dom.development.js:26303:1)

react-dom.development.js:18525 The above error occurred in the <ForwardRef(ChartComponent)> component:

at ChartComponent (http://localhost:3000/static/js/bundle.js:27047:5) at div at Chart at div at App (http://localhost:3000/static/js/bundle.js:39:84)

Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.
logCapturedError @ react-dom.development.js:18525
update.callback @ react-dom.development.js:18558
callCallback @ react-dom.development.js:13092
commitUpdateQueue @ react-dom.development.js:13113
commitLayoutEffectOnFiber @ react-dom.development.js:23204
commitLayoutMountEffects_complete @ react-dom.development.js:24461
commitLayoutEffects_begin @ react-dom.development.js:24447
commitLayoutEffects @ react-dom.development.js:24385
commitRootImpl @ react-dom.development.js:26651
commitRoot @ react-dom.development.js:26517
finishConcurrentRender @ react-dom.development.js:25731
performConcurrentWorkOnRoot @ react-dom.development.js:25648
workLoop @ scheduler.development.js:266
flushWork @ scheduler.development.js:239
performWorkUntilDeadline @ scheduler.development.js:533

JavaScript(React)

1import React from 'react' 2import './Chart.css' 3import { Line } from 'react-chartjs-2' 4 5export const Chart = () => { 6 7 return ( 8 <div className='chart'> 9 <Line /> 10 </div> 11 ) 12}

package.json

1 "chart.js": "^3.7.1", 2 "react": "^18.0.0", 3 "react-chartjs-2": "^4.1.0", 4 "react-dom": "^18.0.0",

Node.js(&npm)

1v16.14.2 //node -v 28.7.0 //npm -v
GITANES👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hoshi-takanori

2022/04/20 09:20

"category" is not a registered scale. というエラーなので、category を使ってるあたりに問題があるのでは…。
guest

回答1

0

自己解決

以下をよく読み試してみました。(書き直しています)
https://www.chartjs.org/docs/3.3.0/getting-started/integration.html

JavaScript(React)

1import React from 'react' 2import './Chart.css' 3import { Line } from 'react-chartjs-2'; 4import { Chart, registerables } from 'chart.js'; 5Chart.register(...registerables); 6 7 8export const LineChart = () => { 9 10 const data = { 11 labels: ['1月','2月','3月','4月'], 12 datasets:[ 13 { 14 borderColor: 'rgba(35,200,153,1)', 15 data: [100,120,50,110], 16 lineTension: 0, 17 } 18 ] 19 } 20 21 return ( 22 <div className="chart"> 23 <Line data={data} /> 24 </div> 25 ) 26}

投稿2022/04/20 10:08

TomoEno

総合スコア53

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問