LoginSignup
1
0

【備忘録】Next.jsでPlotly.jsを使う

Last updated at Posted at 2024-03-30

素のReactとNext.jsで若干書き方に違いがあった。
地味につまずいたのでメモ。
筆者はReact・フロントは門外漢。

dashさまさまだと思った。

要約

変更の要約

ほとんどこの人の記事ママ

Next.jsで扱うための変更とかだけ書く

行頭〜importを以下のように書き換える。

'use client'
import React from 'react'
import dynamic from 'next/dynamic'
const Plot = dynamic(() => import("react-plotly.js"), { ssr: false, })
import {PlotParams} from 'react-plotly.js'
import {Layout, PlotData} from 'plotly.js'

return

イベントもこんな感じで書けば取得できるらしい

onselectedは動かないが、onselectingだと良いとか…

  return (
    // <Plot data={allData} layout={layout1} />
    <Plot
        data={allData}
        layout={layout1}
        onHover={(data)=>{console.log(data)}}
    />
  )

image.png

memo: プロジェクトの作成

npx create-next-app --ts test-app
#...etc...
cd test-app
npm i plotly.js react-plotly.js
npm i --save-dev @types/plotly.js @types/react-plotly.js

cat << EOF > app/page.tsx
import ThreeGraph from "./threegraph";

export default () => {
  return(
    <div>
      <ThreeGraph />
    </div>
  )
}
EOF

touch app/threegraph.tsx
# 上の内容をコピペ

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0