【Highcharts】不明点はHighcharts GPTに訊いてAPIリファレンスでチェックすると良さげ

Highcharts

もう言いたいことはタイトルで終わってしまった気がしますが。。

Javascriptの高機能なグラフ描画ツールHighchartsですが、色々とできる分、オプション構造が複雑で理解しにくいところがあったりします。また、公式ドキュメントを見ても判りにくかったりするので、そんなときの解決方法をまとめてみました。

Highcharts GPT - Charting Powered by AI | Highcharts
Get instant Highcharts code with our chatbot powered by AI. Create reliable and secure data visualizations in seconds of...
Highcharts Core API Options
Interactive charts for your web pages.

不明点の解決手順

一応、ChatGPTやGithub Copilotチャットでもそれなりの回答は得られるのですが、Highcharts公式サイトで用意されているAIチャットの「Highcharts GPT」が一番しっくりくる回答をくれるように思います。

おそらくHighcharts専用にトレーニングされているのでしょう。

また、実際のコードを提示した上で実行結果を回答に埋め込んでくれ、提示されたコードはJSFiddleやCodePenで編集できるようになっており、コードのダウンロードまでできるようになっています。

けっこう至れり尽くせりな感じです。

それでもやはりハルシネーションはあったりするので、

JSFiddleやCodePenでの動作確認とAPI Referenceでの仕様チェックはした方が良いでしょう。

流れを見てみよう

例として、「折れ線(line)グラフ」と「面(area)グラフ」を併せて表示した際に、それぞれのtooltipの表示書式を別々に指定する方法を訊いてみます。

コメントに加えてコード提示をしてくれて、その実行結果まで表示してくれます。

提示されたコードはJSFiddleやCodePenで編集&動作確認ができ、

HTMLとしてコードをダウンロードすることもできます。

▼JSFiddleで開いた画面

▼CodePenで開いた画面

提示コードについては、かなり精度が高いですが、機能しないコードを提示することが結構あります。

例えば、今回提示されたコードは機能しません。

▼今回提示されたコード

Highcharts.chart('container', {
    chart: {
        type: 'line' // メインのタイプをlineに設定
    },
    title: {
        text: 'LineグラフとAreaグラフの併用'
    },
    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May']
    },
    yAxis: {
        title: {
            text: '値'
        }
    },
    tooltip: {
        shared: true // 両方のシリーズのデータを表示するためにsharedを有効にする
    },
    series: [{
        name: 'Line Series',
        type: 'line',
        data: [1, 3, 2, 4, 5],
        tooltip: {
            formatter: function() {
                return 'Line Series: <b>' + this.y + '</b>';
            }
        }
    }, {
        name: 'Area Series',
        type: 'area',
        data: [2, 2, 3, 5, 4],
        tooltip: {
            formatter: function() {
                return 'Area Series: <b>' + this.y + '</b>';
            }
        }
    }]
});

例えば、「Line Series」のformatterを

        tooltip: {
            formatter: function() {
                return 'おれせん: <b>' + this.y + '</b>';
            }
        }

のように変更しても、tooltipの表示は「Line Series」と表示され「おれせん」は表示されません。

原因をHighcharts GPTに訊いても、「このコードは正しい」とか、「データが間違っていないか」とかで解決策が見つかりません。

そんな時には公式の仕様の確認が必要です。

API Referenceで調べましょう。

Highcharts.chart({series{type:area}.tooltip.pointFormatter})

が使えそうではないかと目途をつけてみます。

ってか、絶対これだよね。

↓↓↓はい、ビンゴ。

これで解決ですね。

ちなみに、Highcharts GPTではチャットの文字数制限があるので、あまり長いコードなどを貼り付けるとアラートが出て回答を得られません。

具体的な制限については不明です。

なお、チャットの履歴保存はできないので、コピペやスクリーンショット等でファイルに保存しておきましょう。

以上です。

  • 0
  • 0
  • 0
  • 0

コメント

タイトルとURLをコピーしました