問題タブ [amcharts4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
label - amcharts でカスタム パーセンテージを使用してファネル ラベルの値を変更する
1) このじょうごグラフの右側にある、黄色で強調表示されているラベルの値を変更します。
2) パーセンテージの計算方法を変更する: 通常、各カテゴリのデータに「パーセンテージ」フィールドがあり、強調表示されたラベルのパーセンテージとして表示したいと考えています。たとえば、カテゴリ「second」の data.percentage は 10% です。したがって、図に示すように 10% を表示する必要があります。
コード:
シリーズオブジェクトには、ラベル値を含むラベルというメンバーがあることがわかりましたが、コード自体でそれらを変更する方法がわかりません。どうすればいいですか?
amcharts - amCharts 4 - JavaScript で XYChart の現在ホバーされているシリーズのデータ/色にアクセスする方法
現在ホバーしているシリーズのデータと色に JavaScript でアクセスしようとしています。データは凡例とツールチップで利用できますが、直接アクセスする方法がわかりません。
凡例を外部コンテナーに配置することは可能ですが、それらのコードは多くの追加のコンテナー/ラッパーを作成するため、書式設定が困難になります。 この Github questionはそれに対処しますが、回答は提供されませんでした。
おそらく、イベントを使用して凡例テキストまたは tspan 要素の変更を検出し、新しいテキストを取得できますが、これを行う方法 (amCharts イベントを使用) とそれがどれほど効率的か (特に複数のシリーズおよび/またはカーソルが同期されたチャート)。
別のアイデアは、カーソル位置に基づいてデータを取得することでしたが、これは非効率的です (cursorpositionchanged
シリーズ データが変更されていない場合でも、マウス/カーソルの移動で頻繁に発生します)。dateAxis 値の変更に基づいて、より効率的に実行できるでしょうか? たとえば、positionchanged
イベント リスナーを使用すると、次のようになります。
少なくとも を使用している場合chart.cursor.xAxis = dateAxis
、positionchanged
イベントはカーソルが新しい値にジャンプしたときにのみ発生するようです。したがって、マウス/カーソルの動きで発生するイベントよりも効率的です。
任意の提案をいただければ幸いです。
アップデート
現在ホバーされているということは、グラフの上にマウスを置いて、ツールチップ (たとえば) からアクセスできるシリーズ データと色を指しています。