Highcharts 3.0, bir pasta grafiğinde araç ipuçlarını görüntülerken kayan nokta sayısı doğruluğu sorunu var gibi görünüyor. Ben highcharts demo pasta grafik - Pie with Legend birini kullanarak kesin hatayı yeniden oluşturmak başardı. Javascript'i düzenlemek için "JsFiddle'ta Düzenle" ye tıklayın.Highcharts Pasta Grafiği yüzdeyi yok sayarDecimals araç ipucu ayarı ve kayan nokta hatası sorunu var
Javascript panelinin içinde seri ve veri bölümüne bakın. Firefox ve IE verilerini saklayın ve diğer verileri atın, böylece sadece 2 dilim pastaya odaklanabiliriz. İki veri çenesinin 100'e kadar bir yüzdesi yoktur, bu nedenle yüksek şemalar bizim için yüzdeleri yeniden hesaplar. Üstteki Çalıştır düğmesini tıklayın, dilimlerin üzerinde fare, yüzdeler maksimum ondalık sayısıyla çok doğru. Ama bekleyin, javascript tooltip seçeneğine bakın, highcharts açıkça "percentDecimals: 1" ayarını göz ardı ediyor. Bu sorun # 1. Şimdi
şöyle en elle veri yüzdeleri düzenleyelim: [ 'Firefox'u, 57,7], [ 'IE', 42.3] yüzden tam olarak 100,0 kadar eklerim. Tekrar Çalıştır düğmesine basın, dilim araç ipuçları 'Firefox: 57.0000000000001%' ve 'IE:% 42.3' görüntüler. Yüzdeler 100'e kadar çıkarsa ya da olmasın, bu yüzden küçük bir kayan nokta yanlışlığı ortaya çıkarsa, yeniden hesaplama yapılır. Bu 2 numaralı meseledir. Bu durumda "percentDecimals" yuvarlama çalışmış olsaydı, bu konu gizlenmiş olabilirdi.
Bilmek istiyorum: * Aynı sorunu gören ve bir çeşit iş sahibi olan başka biri var mı? * Yüksek şemalar bu sorunlara yanıt verebilir ve bilinen hatalar olup olmadığını bize bildirebilir mi? Billy Reverb en Yorum dayalı bu soruyu cevaplamak
Neden 'percentDecimals' olduğunu bilmiyorum ama tabi ki Highcharts'da böyle bir seçenek yok. Hata ile ilgili olarak, JS'yi deneyin, 0,1 + 0,2'yi hesaplayın ve etkileri izleyin. Ne tavsiye edebilirim pointFormat kaldırmak ve sadece tooltip.formatter kullanmaktır. –
Teşekkürler Pawel. tooltip.formatter = function() { return this.point.name + ': ' + Highcharts.numberFormat (this.percentage, 1) + '%'; } –
Ayrıca "this.percentage.toFixed (1)' :) –