3

現在、ハイチャートグラフを適応させています。以前は、関連付けられた日付でグラフにポイントをプロットしていました。グラフではmaxZoom:14 * 24 * 3600000、ユーザーがさらにドリルダウンすることもできました。

今、日付を年 + Q# に変換しています。そのため、2011 年 9 月の代わりに、X 軸に 2011 年第 3 四半期が表示されます。

しかし今、私には2つの問題があります。

categories1) 1 つ目は、文字列配列をそのままチャートに渡しているため、ズームできないことです。X 軸が文字列であっても、ズームできるようにしたいと思います。私の知る限り、ズームは秒を使用して X 軸の日付を補間します。

2) 2 つ目はInvalid date、グラフを に指定したにもかかわらず、強調表示したときにチャート上のデータ ポイントが と表示されることlinearです。ここで強調表示に表示する明示的な値を追加する方法はありますか (つまり、年四半期に変換される前の実際の日付値ですか?)

これらの問題を解決する方法はありますか?

関連コード:

plotData=[];
var month = window.countryData.scorecards[i].month - 1;
var year = window.countryData.scorecards[i].year;
categoriesQuarters.push(year + " Q" + parseInt(month/3 + 1));
plotData.push(value);  //Value is either a number or a string, depending on the graph.
....
xAxis: {
        type: 'linear',
        categories: categoriesQuarters
        },
series: [{
                name: graphData.country,
                data: plotData
            }]
4

1 に答える 1

1

ラベルフォーマッターを使用してください。

xAxis: {
    labels: {
        formatter: function() {
            var date = Highcharts.dateFormat('%Y-%m', this.value);
            date = date.split('-');
            return date[0] + " Q" + parseInt(date[1]) / 3 + 1;
        }
    }
}

デモ

于 2012-12-26T17:52:53.077 に答える