0

現在、データベースのデータに従ってレンダリングするハイチャートがあります。現在、「A」や「C」などの値を手動で渡すと正しい値でレンダリングされるテーブルもありますが、ユーザーがクリックしたときに onClick イベントに従ってテーブルをレンダリングしたいと思いますハイチャートのバー。

以下の @a_sum などの対応する値ごとに、チャートに渡される文字列値を含む @a という配列があります。

私はあまり運がなくてもグーグルで検索しました。ユーザーがその特定のバーをクリックしたときに、char のバーの値をどのように取得するのか疑問に思っています。

どんな助けでも大歓迎です。

<script type="text/javascript" charset="utf-8">
var chart1; // globally available
$(document).ready(function () {
    var chart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'bar'
        },
        title : {
            text: "Most Effective Referral Sources"
        },
        xAxis: {
            categories: ['A', 'B', 'C', 'D', 'E', 'F',  'G', 'H', 'I', 'J', 'K', 'L']
        },
        yAxis: {   
        },
        legend: {
            layout: 'vertical',
            floating: true,
            backgroundColor: '#FFFFFF',
            align: 'right',
            verticalAlign: 'top',
            y: 60,
            x: -60
        },
        tooltip: {
            formatter: function() {
                return '<b>'+ this.series.name +'</b><br/>'+
                    this.x +': '+ this.y;
            }
        },
        plotOptions: {
        },
        series: [{
            data: [<%= @a_sum %>, <%= @b_sum %>, <%= @c_sum %>, <%= @d_sum %>,  <%= @e_sum %>, <%= @f_sum %>, <%= @g_sum %>, <%= @h_sum %>, <%= @i_sum %>, <%= @j_sum %>,  <%= @k_sum %>, <%= @l_sum %>]
        }]
    });
});

</script>
4

1 に答える 1

1

あなたが望むのは(私があなたの質問を正しく理解していれば)上記のplotOptionsにイベントを実装することです: http://www.highcharts.com/ref/#plotOptions-column-point-events--click

plotOptions: {
    column: {
         point: {
             events: {
         click: function() {
                     // use this to trigger showing/hiding the specific table you need
                     console.log(this)
                 }
             }
         }
    }
}

たとえば、これは私が取得したコンソール ログのサンプルです。

Lc
_high: 417
...
series: c
...
x: 20
y: 33
__proto__: Object

this.series を使用すると、列をクリックしたシリーズのパラメーターを取得し、「enableTableForDataSeries」関数を呼び出して特定のデータ シリーズを有効にすることができます。

于 2012-07-03T05:41:23.050 に答える