Menu

#102 [number printing] `fixed relative` accounting for `zerofill`

Next Release
open-accepted
None
5
2018-12-30
2016-10-16
No

Please make fixed relative aware of zerofill, which is ignored so far (as also is written in the manual). So

\pgfmathprintnumber[fixed relative,precision=2,zerofill]{0.6}

should yield 0.60.

Discussion

  • Christian Feuersänger

    I understand that the request for 0.6... however, it is not that simple.

    For example, what is supposed to happen if you write

    \pgfmathprintnumber[fixed relative,precision=2,zerofill]{0.006}
    

    The expected outcome is 0.006 without 'zerofill'. How should zerofill affect the result? Should it become 0.0060? I believe this is unexpected. But 0.006 is unmotivated as well, right? Zerofilling has the purpose to allow alignment after the period (at least that is why I am used to it). This alignment request is simply unsupported for 'fixed relative' as it can have an arbitrary number of digits right of the period.

     
  • Stefan Pinnow

    Stefan Pinnow - 2018-12-30
    • status: open --> open-accepted
     
  • Stefan Pinnow

    Stefan Pinnow - 2018-12-30

    As it was discussed via email, you (Christian) agreed on implementing my whish. Here are the relevant parts from the emails (in German)


    [email of Christian from 30.12.2018]
    danke fuer Deine Ausfuehrung dazu. Gut zu wissen, dass Joseph das in siunitx auch schon geloest hat, dann macht es wohl sinn, das konsistent zu machen.

    Allerdings schaffe ich das nicht kurzfristig, weil die aktuelle Loesung etwas unflexibel ist und ich die tiefer ueberarbeiten muesste.

    Was Tabellen und Ausrichtung angeht: fixed zerofill ist ja genau dafuer da, Zahlen ohne Nachkommenstellen als ".00" zu schreiben. Was Tabellen angeht, habe ich dafuer ja pgfplotstable entwickelt. Mir war nicht bewusst, dass Joseph dazu auch ein Produkt entwickelt hat... ?

    Egal, von mir aus koennen wir das also genau so machen wie von Dir vorgeschlagen. Koenntest Du das ins Ticket schreiben? Dann kommen wir darauf spaeter zurueck.


    [email of Stefan from 30.12.2018]
    ich glaube das geht schneller auf Deutsch und unter uns beiden.
    Ursprung des Feature Requests war die Beantwortung der Frage
    http://tex.stackexchange.com/questions/333883
    was eben im Moment so nicht (einfach) möglich ist, richtig?

    Zu deinem Kommentar:
    Ich finde, dass die Ausgabe "0.0060" exakt das erwartete Ergebnis ist, wenn man

    \pgfmathprintnumber[fixed relative,precision=2,zerofill]{0.006}
    

    schreibt. (Dies entspricht auch der Ausgabe von

    \num[round-mode=figures,round-precision=2]{0.006}
    

    aus dem siunitx-Paket.)

    Ich finde es sollten keine nachstehenden Nullen zum Ausrichten von Zahlen am Dezimaltrenner verwendet werden, vor allem nicht dann, wenn die Zahlen dann eine Genauigkeit vortäuschen, die sie gar nicht haben. Dies macht aus meiner Sicht auch nur in Tabellen Sinn, und dafür gibt es doch auch die eierlegende Wollmilchsau siunitx ;)
    http://mirrors.ctan/macros/latex/contrib/siunitx/siunitx.pdf#page=14
    (Da geht noch viel mehr. Dafür solltest du mal durch Abschnitt 5.14 scrollen.)