Piwik displays a lot of numbers, in graphs, tables, overview reports, etc.
Depending on your country, a number is displayed differently. For example - US: 5,000.34 - EU: 5 000,34
The translation file could contain a NumberFormat entry that would define: - the thousands separator - the decimal separator
See function http://php.net/number_format
The current behavior is a mix: the graphs show US formats, while the tables and overviews don't have any specific style applied.
Every number output in Piwik would have to go through the same helper function, that would apply the translation formatting preference.
Maybe we could use some sort of Smarty magic helper functions to automatically apply the styles to numbers, the same way it currently does add the
?piwik=0.5.5 parameter as cache burster parameter?
Setting milestone as 1.0, but this might not make it if we need to update all templates to add the smarty modifier call to each number printed.
Piwik::getPrettyNumber, which turns 1000000 into 1,000,000 or 1.000.000 should be used on every numeric value in Piwik to make report data more readable. I think this can be done by: - Modifying existing prettify-ing functions so they make use of Piwik::getPrettyNumber. - Creating a generic DataTable filter that applies getPrettyNumber to metrics that have no unit (ie, visits). Would have to be applied by ViewDataTable, not the API.
Should probably be done after widget integration testing is up and running.
Also duplicates #2773
Can we prioritise this issue? Thousands and millions separators are really important as right now it's very easy to make a mistake e.g. between 10000000 page views and 100000000 page views when we discuss traffic numbers with potential clients.
Importing the number formats to the Intl plugin should be easily doable. But I would target that for 3.0 as the changes to the timeformats are already included in 3.0 branch.
What I'm not able to estimate is the time that would needed to use those number formats everywhere in Piwik
@zawadzinski Good point - this feature is a must-have! adding to 3.0.0 at least, but let's also consider whether this could be done earlier in our LTS 2.X version.
@sgiehl - waiting for 3.0.0 in general can be a bit challenging, because it won't be ready until next year sometime (not defined yet) - maybe we could import the relevant Intl translation points in 2.X
Where should number formatting be applied at minimum (MVP)? - All websites dashboard - in all data table reports - in all graphs - in overview reports (eg. next to sparklines)
Optionally in: - metadata reports from API - all visualisations
if it could be done "relatively quickly" this would be very worth doing! @sgiehl maybe you have some time to investigate this in coming few weeks, if not let me know, thanks
I'm currently having a look at that. I will also include the changes done to date and time formats, which were already merged to 3.0 branch. Otherwise it might result in too many merge conflicts later.
I'm almost finished with importing the required data from CLDR, but using those within Piwik might be a bit more challenging...
Great news: implemented in 2.15.0 in #8857