URL: https://www.overclockers.at/coding-stuff/javascript_rundungsfehler_216325/page_2 - zur Vollversion wechseln!
Moin.
Ich hab hier auch grad ein JS-WTF... Es geht um Soll- und Ist-Werte von Kosten, die mit einer Google Chart Treemap visualisiert werden. Die arbeitet auf einer Tabelle mit 4 Spalten (Name, Parent, Size, Color). Size ist der Ist-Wert, Color die Differenz von Soll zu Ist in % (also bspw. wenn 100 Soll und 150 Ist -> Color 50). Beim Mouseover über einen Knoten werden in einer Tabelle Details angezeigt.
Und hier kommts. Weil in der Google Datentabelle der Soll-Wert nicht explizit drinsteht (nur Ist und Differenz zu Soll), muss ich mir den beim Mouseover wieder berechnen. An sich nichts schlimmes, nur rechnet JS irgendwie was anderes als dasteht.
Code:Formel: diff = ( (100*ist) / soll) -100 Codezeile: var soll = (100*ist)/(diff+100) Tatsächliche Berechnung: soll = ist / (10*diff) Beispiel ------- soll = 1000, ist = 1500 --> diff = 50 (wird richtig berechnet) Berechneter Soll-Wert: 3
Not reproducible. Bei mir kommt 1000 raus, wäre ja auch komisch, wenn's anders wäre.
Treemap: http://nikolaus-piccolotto.info/treemap/ (nur mit Chrome/Opera)
Daten: http://nikolaus-piccolotto.info/treemap/DTD.xml
Ich steh völlig an
//Datentyp-ownage war schuld
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025