2012-04-12 21 views
5

beni hayat doğru çalışma almak gibi olamaz bir Highcharts pasta grafik güncelleme ama nasıl çalışmak çalışıyorum güncellenmesi.Highcharts: setData ile Pasta Grafiği()

Ben belgelerine baktım ve ince güncellemek için bir çubuk ve çizgi ve eğri grafiği elde etmek mümkün olmuştur ama pasta grafikler için bu fonksiyonu kullanırken sadece çalışmıyor. madde şöyle serisini eşittir

item.setData([["none", 100]], true); 

: Şu anda beslenerek am

demolar gösterildiği gibi

$.each(browser_chart.series, function(i, item){ 
    if(item.name == 'Browser share'){ 
     console.log(data.browsers); 
     item.setData([["none", 100]], true); 
    } 
}); 

bir pasta grafiği veri biçimlendirilir nasıl. Problem, seriyi doğru okumaz gibi görünmüyor.

item.setData([\"none\", 100], true); 

Ve bir şey yapmak gibi görünüyor ama (tabii bunun yanlış anlamına gelir) doğru x ve y değerleri okuyamıyor: denerim.

burada herkes bu çalışma almak için yönde işaret edebilir?

sayesinde

cevap

7

Düzenlendi:
Eğer bu durumda bütün pasta parçalar için Dizilerin dizi olarak ayarlamak zorunda yeni verileri ayarlamasına
. Benim Example yılında
Ben altı kategoriler var, bu yüzden hepsi için veri ayarlamak ettik. Ancak benim sorum ben düzgün izah etmediğini daha bir tad katılan

var seriesData = []; 
$.each(browser_chart.series, function(i, item) { 
    if(item.name == 'Browser share'){ 
     seriesData.push(["serie"+i, someNumber]); 
    } 
}); 
chart.series[0].setData(seriesData, true); 
+0

Hmm işe yaramadı ama örnek bana neden söylemedin: Ben de bu Highcharts ile bilinen bir sorundur öğrendim. Pasta grafiğini güncellediğimde, aslında bazı tarayıcıların seçtiğim bir tarih aralığı için bir değere sahip olmadığından serilerdeki noktaları kaçırdım. Başlangıçta düzgün güncellemek gibi olamaz vardı ve pis bir hata atıyor daha ben daha az puanla güncellediğimde görünüyor. Bunun etrafında zaten biliyor musun? – Sammaye

+0

Ben pasta grafiği yeni Highcharts.Chart() ile remaking tarafından farklı puanlar ile çalışmayı başardık ama bu tür çirkin, bunu yapmak için tek yol bu biliyor musunuz? – Sammaye

0

ben işaretlediğiniz Ricardos cevap:

Yani, bu durumda böyle bir şey yapmak zorunda.

ben bir PHP Arka Ucu tarafından oluşturulan JSON'dan AJAX aracılığıyla pasta grafiği güncellenmesi edildi. Pasta grafiğine yeni veri uygularken kırılırdı. Böylece sadece pasta grafiği güncelleştiremezsiniz noktaları farklı sayıda var çünkü ben bulabildim Ricardos cevabı kullanarak

o yüzden gibi yeniden yapmalıyız edilir: Bu sizi sağlayacak

browser_chart_config.series[0].data = data.browsers; 
browser_chart = new Highcharts.Chart(browser_chart_config); 

Farklı sayıda noktaya sahip olduğunuzda bir grafiği güncelleyin.

, o yardımcı olur

EDIT Umut: https://github.com/highslide-software/highcharts.com/issues/542

+0

Yalnızca tüm seri verilerini ayarladığınızda çalışır, böylece sizin durumunuzda grafiği yok etmeniz ve tekrar yapmanız gerekir. : / –

İlgili konular