1
我正在繪製與RickshawJS不同的數據。但是當用戶點擊#search
按鈕時,我需要一種更新圖表的方法。現在它只是在舊的圖表下面創建一個新的圖表,而這非常麻煩。將數據添加到空人力車圖表
用戶進入頁面並輸入一些詳細信息,然後單擊該按鈕進行繪製。所以理想情況下,我想從一張未顯示的空白圖表開始,但我無法弄清楚如何從圖表和座標軸中刪除數據,然後進行更新。
我可以在圖表和座標軸上打電話$('#chart svg').remove();
,但看起來很亂。
$('#search').click(function(event){
event.preventDefault();
var data = utils.malletData();
var graph = new Rickshaw.Graph({
element: document.querySelector("#chart"),
width: 800,
height: 250,
series: [ {
name: data['name'],
color: 'steelblue',
data: data['series']
} ]
});
graph.render();
var hoverDetail = new Rickshaw.Graph.HoverDetail({
graph: graph,
xFormatter: function(x) {
var date = new Date(x).getTime();
return moment(x).format('MMMM Do YYYY, h:mm:ss a');
},
yFormatter: function(y) { return Math.floor(y) + " users" }
});
var xAxis = new Rickshaw.Graph.Axis.X({
graph: graph,
orientation: 'bottom',
element: document.getElementById('x_axis'),
tickFormat: function(x) { return moment(x).fromNow(); },
ticks: 7,
tickSize: 1,
});
xAxis.render();
var ticksTreatment = 'glow';
var yAxis = new Rickshaw.Graph.Axis.Y({
graph: graph,
orientation: 'left',
tickFormat: Rickshaw.Fixtures.Number.formatKMBT,
ticksTreatment: ticksTreatment,
element: document.getElementById('y_axis'),
});
yAxis.render();
});