0
ファイリングサークルの色を動的に更新できますか?D3塗りつぶしゲージ - d3自体を通してファイリングサークルの色を動的に更新できますか?
ファイリングサークルの色を動的に更新できますか?D3塗りつぶしゲージ - d3自体を通してファイリングサークルの色を動的に更新できますか?
だけで可能、しかし、すべての家族のための楽しい..
私は色などを設定する機能を持っている:
function getColor(num){
if(num >= 9){
return '#E72530';
} else if(num >= 7){
return '#EAAB0E';
} else if(num >= 5){
return '#FFE400';
} else if(num >= 3){
return '#187AD3';
} else {
return '#00ADGE';
}
}
だから、そこから私はそのコール私のゲージ(複数可)を持っていますgetDataから返されたデータの番号を持つgetColor関数。 getData urlはjsonデータを返すAPIを呼び出します。このレベルに基づいて、今では色
function loadStuff(){
$.getJSON('/getData', function(d) {
var ccolor = getColor(d.level);
var config1 = liquidFillGaugeDefaultSettings();
config1.circleColor = ccolor;
config1.textColor = "#ffffff";
config1.waveTextColor = "#ffffff";
config1.waveColor = ccolor;
config1.circleThickness = 0.2;
config1.textVertPosition = 0.2;
config1.waveAnimateTime = 1000;
config1.displayPercent = false;
var gauge1 = loadLiquidFillGauge("fillgauge1", d.level*10, config1);
});
を変更します、ページがロードされたときに、これはのみ動作します気づきました。私はあなたが "恥ずかしい"と思うことができますが、助けが手元にあります。
ページが読み込まれたときにloadStuff関数を呼び出して、好きな間隔でタイマーを設定することができます。
window.onload = function() {
//Make sure the function fire as soon as the page is loaded
loadStuff();
// run the function every 60 seconds
setInterval(function() {
loadStuff();
}, 60 * 1000); // 60 * 1000 milsec
}
提案をいただきありがとうございます。私はすでに私のデータ構造に基づいて間隔を変更するためのタイマーを演奏していたので、使用しなかったのですが、あまりにもちらつきがありました。 – amy8374