ich kann dein Problem in diesen Fall nicht nachvollziehen, vielleicht kannst du es genauer beschreiben
wenn breiteEinesJahres = 50,3 ist und die erste Linie bei 20 anfängt, wo soll dann die zweite sein, bei 70 oder 71?,
du musst dich schon entscheiden, es gibt keine Komma-Pixel,
dass irgendwann durch das Runden mal ein Jahr ein Pixel breiter ist als das vorherige,
oder das gerundet(Jahr) * 3 was anderes ergibt als gerundet(3*Jahr) ist selbstverständlich, so ist die Mathematik
(*)
genauso dann wenn du meinetwegen einen einzelnen Wert vom Mai einmalen willst und 0.4 * breiteEinesJahres = 20,12 berechnest,
dann musst du bei Pixel 20 oder 21 malen?
ich sehe nichts neues zum vorherigen, dein Beispiel klingt so als könnte irgendwas interessantes dran sein,
aber für mich nicht zu erkennen
(*)
ich empfehle dir generell eine eigene halbwegs intelligente Umrechnung,
die z.B. dynamisch aus vorhandenen Platz und benötigter Anzahl eine sinnvolle gerade Pixelbreite für ein Jahr bestimmt,
auch wenn dann am rechten Rand paar Pixel frei bleiben,
statt 50,3 also genau 50 Pixel pro Jahr, aber pro Monat/ Tag hat man dann natürlich immer noch Probleme