Surface Change

NASA provides global land cover classification data:

2011, Source

Unfortunately it stops in 2011. I did a little bit more digging and found a great resource here. What I wanted to do was show surface changes over time. Here’s my result:

Each year column shows coverage by percent, and last column shows the percent change from 2001 to 2019.

No analysis in this post. Enjoy 🙂 -Zoe


# Zoe Phin, 2021/02/25
# File:
# Run: source; require; download <user> <pass>; prepare; analyze

require() { sudo apt-get install hdf4-tools; }

download() { base=""
    wget -O 2001.hdf --user=$1 --password=$2 $base/2001.01.01/MCD12C1.A2001001.006.2018053185512.hdf
    wget -O 2010.hdf --user=$1 --password=$2 $base/2010.01.01/MCD12C1.A2010001.006.2018053185051.hdf
    wget -O 2019.hdf --user=$1 --password=$2 $base/2019.01.01/MCD12C1.A2019001.006.2020220162300.hdf

parse() {
    ncdump-hdf -v Land_Cover_Type_1_Percent $1.hdf | sed 1,702d | tr -d ',;}' | awk '{
    for (i=1; i<=NF; i++) 
        printf "%03d ", $i
    }' | fold -w489600 | awk '{
    for (t=1; t<=17; t++) {
        for (l=0; l<=7199; l++)
            sum += $(17*l+t)
        printf "%.4f ", sum/7200
        sum = 0
    print ""
    }' > $

area() { awk 'BEGIN { a=6378.137; e=1-6356.752^2/a^2; r=atan2(0,-1)/180
    for (l=-89.975; l<=89.975; l+=0.05)
        printf "%.9f\n",(0.05*a*r)^2*(1-e)*cos(r*l)/(1-e*sin(r*l)^2)^2/70842.4493856
    }' > .area

whole() { paste -d ' ' .area $ | awk '{ 
        for (i=2; i<=NF; i++) t[i] += $1*$i; 
    } END { 
        for(i in t) printf "%.4f ", t[i]
        print "" 

prepare() { parse 2001; parse 2010; parse 2019; }

analyze() { area; echo 'Water
    Evergreen Needleleaf Forest
    Evergreen Broadleaf Forest
    Deciduous Needleleaf Forest
    Deciduous Broadleaf Forest
    Mixed Forests
    Closed Shrubland
    Open Shrublands
    Woody Savannas
    Permanent Wetlands
    Urban and Built-up
    Cropland/Natural Vegetation Mosaic
    Snow and Ice
    Barren or Sparsely Vegetated' | tr -d '\t' > .type

    whole 2001 | tr ' ' '\n' > .2001
    whole 2010 | tr ' ' '\n' > .2010
    whole 2019 | tr ' ' '\n' > .2019
    echo 'Type                                |  2001  |  2010  |  2019  |   % Chg' 
    echo '------------------------------------+--------+--------+--------+----------'
    paste -d, .type .2001 .2010 .2019 | sed '$d' | awk -F, '{
        printf "%-35s | %6.3f | %6.3f | %6.3f | %+7.3f%\n", $1, $2, $3, $4, ($4/$2-1)*100

This data requires user registration. Substitute <user> and <pass> with your credentials.

Published by Zoe Phin

6 thoughts on “Surface Change

  1. Great data, fine analysis. I like the way you put it up without analysis of the how and the why. Leaves that to the reader which is great for engagement.

    I can understand the decimation of the evergreen forests. That’s the exhaustion of resources that would worry me. Probably greatest in North America and being reversed in China? Perhaps Zoe can tell us.

    Increased leaf area will drive an increase in the severity of fires. If we have an increase in our ability to stop these fires at source, quickly, it acts to increase the fuel load and results in greater catastrophe at a later date because we can’t stop the big ones. And that, regardless of the money we throw at it. So, best response is rotational burning to keep fuel loads down to something that can be handled.

    Zoe, I have a new post at:

    Not a lot of data there but a good story nevertheless.

    Most of the 1700 views yesterday coming via Facebook and since I don’t use it, I have no idea what the users are saying or what’s driving the site visitation.

    Paul Homewood gave it a run. You might like to leave a comment. I would appreciate that.

    Liked by 1 person

  2. Only 2.9% snow and ice? Ice alone should amount to ~10%. In million square km: Antarctica=14, Antarctic sea ice=18, Greenland=2, Arctic sea ice=15, plus other continental glaciers. Total area of the earth=510.


  3. “2.2 Known Issues and Sources of Uncertainty
    • Areas of permanent sea ice are mapped as water if they are identifed as water according to the C6
    Land/Water mask (Carroll et al., 2009). Some land areas, for example glaciers within permanent
    topographic shadows, were mapped as water according to this mask, which introduces isolated errors
    in the product.
    • Wetlands are under-represented.”


    Click to access MCD12_User_Guide_V6.pdf

    There are other known issues but those seemed the most pertinent. Doubtful it could explain such a large discrepancy, but who knows?


      1. Neither. Looks like the comment from Jarle dovetails with the PDF, which specifically mentions sea ice and glaciers being mapped as water. Ignoring those leaves Antarctica which at 14sqm vs 510sqm works out to around 2.7%, close to what’s reported.


Leave a Reply to Zoe Phin Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: