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

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

新規登録して質問してみよう
ただいま回答率
85.49%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

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

Q&A

解決済

1回答

5710閲覧

react-chartjs-2のカスタマイズをしたい

gksh7

総合スコア40

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

React.js

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

0グッド

0クリップ

投稿2018/05/14 22:44

react-chartjs-2のカスタマイズをしたいと思っています。

具体的には下記2点を実現したいと思っています。

1)ツールチップを表示させつづけさせて、(今はタップしないと表示されないので)
なおかつツールチップの色や位置をカスタマイズしたい
(もしそれが難しいようであれば、ツールチップをずっと非表示にして、自作のツールチップを置こうかと考えています。)
理想は前者です。

2)y軸のラベルを消したい(0, 50, 100, 150を消したい)
下の画像をご参照ください。

ソースコード

自分でここまで書きました

js

1import React from 'react' 2import PropTypes from 'prop-types' 3import { Bar } from 'react-chartjs-2' 4 5 6class BarChart extends React.Component { 7 render() { 8 const data = { 9 labels: ['項目A', '項目B', '項目C'], 10 datasets: [{ 11 data: [38, 125, 75], //dummyデータ 12 backgroundColor: ['#f4640b', '#4f92cb', '#b8cb4f'], 13 }] 14 } 15 16 return ( 17 <div className="area_report_bar"> 18 <Bar data={data} 19 width={300} 20 height={200} 21 options={{ 22 maintainAspectRatio: false, 23 legend: { 24 display: false 25 }, 26 scales: { 27 yAxes: [{ 28 ticks: { 29 max: this.props.maxY, 30 min: 0, 31 stepSize: 50 32 } 33 }] 34 } 35 }} 36 /> 37 </div> 38 ) 39 } 40} 41 42BarChart.propTypes = { 43 ChartBar: PropTypes.node 44} 45 46export default BarChart

現在は下記の感じになっています。

イメージ説明

いろいろと試しましたが
1)と2)がどうも実現できません。。

react-chartjs-2にお詳しい方がいらしたら、教えていただけますと大変、助かります。

何卒宜しくお願いたします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

react-chartjs-2は知らないですが,単にchart.jsのreact用ラッパーなのでchart.jsについて調べればいいですね.

1)ツールチップを表示させつづけさせて、(今はタップしないと表示されないので)

なおかつツールチップの色や位置をカスタマイズしたい

常に表示するならtooltipというよりはdata labelですね.
ということでchartjs-plugin-datalabelsという公式のプラグインがありますので,それを使うほうが(個人的には)いいと思います。

スタイルも色々指定できるようです.
Options - chartjs-plugin-datalabels

2)y軸のラベルを消したい(0, 50, 100, 150を消したい)

scales.yAxes.ticks.displayfalseにするとできます.

javascript - Remove x-axis label/text in chart.js - Stack Overflow
Axes - Chart.js documentation

質問文のコードをもとに改変しました.
CodeSandbox Demo

投稿2018/05/15 01:59

編集2018/05/15 02:01
karamarimo

総合スコア2551

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

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

gksh7

2018/05/15 03:07

今回もありがとうございます。 大変、勉強になりました。 参考URLおよびコードも書いていただいて、実現したいことができました。 オプションで実際にスタイルも変えてみました。 期待通りな感じです! また、他にも、種類の違ったグラフを実装する予定ですので 今後にも大変活かせると思います。 感謝申し上げます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問