4

グラフを使用して のデータを視覚化していTimeboxScopedAppます。スコープが変更されたときにデータを更新したいと考えています。here でremove()説明されているように、チャートを使用してから再描画するというより強引なアプローチでは、オーバーレイされた「読み込み中...」マスクが残りますが、それ以外は機能します。Highchart ネイティブメソッドを使用する自然なアプローチが私の好みですが、App SDK ラッパーではなく、実際の Highchart オブジェクトにアクセスする方法がわかりません。redraw()

コードの関連部分は次のとおりです。

var chart = Ext.getCmp('componentQualityChart');
if (chart) {
    var chartCfg = chart.getChartConfig();
    chartCfg.xAxis.categories = components;
    chart.setChartConfig(chartCfg);
    chart.setChartData(data);
    chart.redraw(); // this doesn't work with the wrapper object
} else { // draw chart for the first time

新しいデータでグラフを再描画するにはどうすればよいですか?

4

2 に答える 2

3

チャート (componentQualityChart) が のインスタンスであると仮定するとRally.ui.chart.Chart、次のように HighCharts インスタンスにアクセスできます。

var highcharts = chart.down('highchart').chart;

// Now you have access to the normal highcharts interface, so
// you could change the xAxis
highcharts.xAxis[0].setCategories([...], true);

// Or you could change the series data
highcharts.series[0].data.push({ ... });  //Add a new data point

// Or pretty much anything else highcharts lets you do
于 2013-07-26T20:57:27.423 に答える