問題タブ [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.

0 投票する
1 に答える
430 参照

label - amcharts でカスタム パーセンテージを使用してファネル ラベルの値を変更する

ここに画像の説明を入力 私は2つのことをしたいと思います:

1) このじょうごグラフの右側にある、黄色で強調表示されているラベルの値を変更します。

2) パーセンテージの計算方法を変更する: 通常、各カテゴリのデータに「パーセンテージ」フィールドがあり、強調表示されたラベルのパーセンテージとして表示したいと考えています。たとえば、カテゴリ「second」の data.percentage は 10% です。したがって、図に示すように 10% を表示する必要があります。

コード:

シリーズオブジェクトには、ラベル値を含むラベルというメンバーがあることがわかりましたが、コード自体でそれらを変更する方法がわかりません。どうすればいいですか?

0 投票する
1 に答える
1043 参照

amcharts - amCharts 4 - JavaScript で XYChart の現在ホバーされているシリーズのデータ​​/色にアクセスする方法

現在ホバーしているシリーズのデータ​​と色に JavaScript でアクセスしようとしています。データは凡例とツールチップで利用できますが、直接アクセスする方法がわかりません。

凡例を外部コンテナーに配置することは可能ですが、それらのコードは多くの追加のコンテナー/ラッパーを作成するため、書式設定が困難になります。 この Github questionはそれに対処しますが、回答は提供されませんでした。

おそらく、イベントを使用して凡例テキストまたは tspan 要素の変更を検出し、新しいテキストを取得できますが、これを行う方法 (amCharts イベントを使用) とそれがどれほど効率的か (特に複数のシリーズおよび/またはカーソルが同期されたチャート)。

別のアイデアは、カーソル位置に基づいてデータを取得することでしたが、これは非効率的です (cursorpositionchangedシリーズ データが変更されていない場合でも、マウス/カーソルの移動で頻繁に発生します)。dateAxis 値の変更に基づいて、より効率的に実行できるでしょうか? たとえば、positionchangedイベント リスナーを使用すると、次のようになります。

少なくとも を使用している場合chart.cursor.xAxis = dateAxispositionchangedイベントはカーソルが新しい値にジャンプしたときにのみ発生するようです。したがって、マウス/カーソルの動きで発生するイベントよりも効率的です。

任意の提案をいただければ幸いです。

アップデート

現在ホバーされているということは、グラフの上にマウスを置いて、ツールチップ (たとえば) からアクセスできるシリーズ データと色を指しています。

例: CandlestickSeriesLineSeries