2014 WHO Growth Charts for Canada
[version française]

In 2014, the Public Health Agency of Canada (PHAC) and their Collaborative Committee on national growth charts released the revised 2014 WHO Growth Charts for Canada. Both Set 1 and Set 2 were intended to address concerns raised by Canadian chart users. Weight-for-age reference curves were extended to ages 10–19 years based on re-analysis by the Canadian Pediatric Endocrine Group (CPEG) of the ‘core data’ from the US National Center for Health Statistics, collected by NCHS from 1963–1975 and used by the WHO to develop their 2007 reference curves. In the Set 2 charts, granularity was added in the normal range (−2 to +2 SD) through restoration of the 7 centiles familiar to long-time CDC Growth Chart users, important in the application of conventional diagnostic criteria for failure to thrive and hypertension. Potentially misleading extreme centiles were also dropped or de-emphasized, consistent with the published CPEG re-analysis.

We have therefore created a number of on-line plotting tools to prepare hi-resolution JPEG images for publication or presentation of growth trajectories with these new charts. Detailed instructions follow the links. For optimal viewing, you may wish to widen the browser window so that you can see each data entry line separately, with two adjacent plots. An HTML5-compliant browser is required to use this plotter, which takes advantage of the HTLM5 canvas graphics. Chrome, Firefox, or Safari are recommended.

Set 2 Charts (released by PHAC in September, 2014):

Set 1 Charts (released by PHAC in March, 2014):

Other links:

For those of you needing batch calculations, we also provide a number of on-line and stand-alone tools. For details, see the links for our WHO macros and Shiny apps below.


Instructions for using web plotter, ages 2–19 years

Instructions for using the infant plotter (ages 0–2 years) are similar. Click here for a list of major differences and implementation details.

Quick-start instructions (requires an HTML5-compliant browser, e.g. Chrome, Firefox, or Safari):

Detailed instructions

The plotting application is intended to be fairly intuitive to use. In the production of publication quality versions of the 2014 WHO Growth Charts for Canada issued by the PHAC, it makes extensive use of HTML5 canvas graphics, which require an HTML5-compliant web browser (Firefox, Chrome, Safari). Internet Explorer is NOT supported. The application uses both HTML5 and JavaScript code, available in any HTML5-compliant browser ‘out of the box’. If you have turned off JavaScript in your browser preferences, you will need to turn it back on. For optimal viewing, you may also wish to widen your browser window so that both the height–weight and body mass index charts are visible at the same time.

To plot height, weight, and body mass index (BMI), you will need to provide some data, including date of birth, date of visit (when the measurements were taken), height, and weight. To respect patient privacy laws, none of these data are shared with the server hosting this application, and all calculations are done locally in your browser.

Clicking on this button instructs your browser to calculate the following results, which appear to the right of the data entry fields:

In addition, height, weight, and body mass index are plotted on the 2014 WHO Growth Charts for Canada, using a Set 2 or Set 1 template. Several additional buttons allow you to further modify or save these plots.


Instructions for using the web plotter, ages 0–2 years

Operation of the infant plotter is nearly identical with the some minor exceptions. Unlike the charts for older children, the flip side of the length- and weight-for-age chart does not plot BMI-for-age, but instead displays head circumference and weight-for-length. Although the WHO provides BMI charts for infants and many national health agencies use them routinely, Canadian authorities prefer weight-for-length, in part to mitigate inaccuracies in the measurement of length at this age. This may be particularly relevant in a clinical setting, since height (length) is squared in the denominator of the BMI calculation. Other differences include:


WHO macros

It is worth noting that JavaScript was never intended for serious scientific applications, as opposed to animated hamster GIFs. As a result, it lacks standard features, like a normal probability density function or a look-up function for matching age and sex with the tabulated LMS parameters. For the web plotter, age is therefore rounded to the nearest month before matching to the corresponding row in the LMS look-up table. In contrast, the WHO statistical macro packages use linear interpolation to estimate the ‘exact’ LMS parameters before calculating the Z-scores. In general, the difference is trivial (a wobble of 0.01 or 0.02 in the second decimal point). The same is true of length, which is rounded to the nearest whole centimeter before weight-for-length Z-scores are calculated. For this reason, statistical purists may prefer to use the WHO macro packages for R, SAS, Stata and SPSS, which come in three flavors:

Any of these macro packages can be used to analyze batch files in an appropriate statistical package. Please note that the who2007 macro packages calculate weight-for-age for ages 5–10 years only. If you wish to extend the range to include ages 10–19 years, you should use the CPEG revisions (2016) available from our website. These revised macro packages return WHO calculations where WHO LMS tables are available, but will also calculate weight-for-age Z-scores based on our 2014 re-analysis of the WHO data for ages 10–19 years (BMC Pediatrics 2014;14:32). Please note that the original WHO macro packages for SAS, Stata, and SPSS have not been updated since 2007. In contrast, the R macros were updated in 2013. While I revised the SAS and Stata packages in 2016, I will probably not continue to maintain them.

So you may want to follow the WHO example and use the R macros. More information about R and free downloads for various platforms can be found at The Comprehensive R Archive Network.


Shiny apps

There is also an option for those wanting the WHO macros without the bother of a statistical package. We have created an online application (Zapps™) running the WHO macros on an R server (aka Shiny).

On the Shiny server, batch data may be uploaded in the form of a comma separated variable (.csv) spreadsheet, from Excel or similar. An Excel calculator is also available for processing batch files (Windows only).

For those who prefer to create growth charts by uploading anthropometric data in spreadsheet (.csv) format, we have also created a Shiny plotter for this purpose. Unlike this web plotter (which is written in HTML5 and JavaScript), the Shiny host is capable of serving results from the statistical package R, which makes it easier to support experimental features, such as joining lines, symbol and colour choices, etc. Please let us know what you think.

Or if you prefer to combine direct data entry with the versatility of Shiny:


If you have questions, comments or suggestions, please contact Dr. Atul Sharma or Dr. Dan Metzger.

Click here to return to the top of the page.