Skip to content

Instantly share code, notes, and snippets.

@clhenrick
Last active July 5, 2017 22:34
Show Gist options
  • Save clhenrick/702c614fe6aa933657f76b5f79e7eb3d to your computer and use it in GitHub Desktop.
Save clhenrick/702c614fe6aa933657f76b5f79e7eb3d to your computer and use it in GitHub Desktop.
Data Nesting Demo for Tom
license: mit
country latitude longitude name
AD 42.546245 1.601554 Andorra
AE 23.424076 53.847818 United Arab Emirates
AF 33.93911 67.709953 Afghanistan
AG 17.060816 -61.796428 Antigua and Barbuda
AI 18.220554 -63.068615 Anguilla
AL 41.153332 20.168331 Albania
AM 40.069099 45.038189 Armenia
AN 12.226079 -69.060087 Netherlands Antilles
AO -11.202692 17.873887 Angola
AQ -75.250973 -0.071389 Antarctica
AR -38.416097 -63.616672 Argentina
AS -14.270972 -170.132217 American Samoa
AT 47.516231 14.550072 Austria
AU -25.274398 133.775136 Australia
AW 12.52111 -69.968338 Aruba
AZ 40.143105 47.576927 Azerbaijan
BA 43.915886 17.679076 Bosnia and Herzegovina
BB 13.193887 -59.543198 Barbados
BD 23.684994 90.356331 Bangladesh
BE 50.503887 4.469936 Belgium
BF 12.238333 -1.561593 Burkina Faso
BG 42.733883 25.48583 Bulgaria
BH 25.930414 50.637772 Bahrain
BI -3.373056 29.918886 Burundi
BJ 9.30769 2.315834 Benin
BM 32.321384 -64.75737 Bermuda
BN 4.535277 114.727669 Brunei
BO -16.290154 -63.588653 Bolivia
BR -14.235004 -51.92528 Brazil
BS 25.03428 -77.39628 Bahamas
BT 27.514162 90.433601 Bhutan
BV -54.423199 3.413194 Bouvet Island
BW -22.328474 24.684866 Botswana
BY 53.709807 27.953389 Belarus
BZ 17.189877 -88.49765 Belize
CA 56.130366 -106.346771 Canada
CC -12.164165 96.870956 Cocos [Keeling] Islands
CD -4.038333 21.758664 Congo [DRC]
CF 6.611111 20.939444 Central African Republic
CG -0.228021 15.827659 Congo [Republic]
CH 46.818188 8.227512 Switzerland
CI 7.539989 -5.54708 Côte d'Ivoire
CK -21.236736 -159.777671 Cook Islands
CL -35.675147 -71.542969 Chile
CM 7.369722 12.354722 Cameroon
CN 35.86166 104.195397 China
CO 4.570868 -74.297333 Colombia
CR 9.748917 -83.753428 Costa Rica
CU 21.521757 -77.781167 Cuba
CV 16.002082 -24.013197 Cape Verde
CX -10.447525 105.690449 Christmas Island
CY 35.126413 33.429859 Cyprus
CZ 49.817492 15.472962 Czech Republic
DE 51.165691 10.451526 Germany
DJ 11.825138 42.590275 Djibouti
DK 56.26392 9.501785 Denmark
DM 15.414999 -61.370976 Dominica
DO 18.735693 -70.162651 Dominican Republic
DZ 28.033886 1.659626 Algeria
EC -1.831239 -78.183406 Ecuador
EE 58.595272 25.013607 Estonia
EG 26.820553 30.802498 Egypt
EH 24.215527 -12.885834 Western Sahara
ER 15.179384 39.782334 Eritrea
ES 40.463667 -3.74922 Spain
ET 9.145 40.489673 Ethiopia
FI 61.92411 25.748151 Finland
FJ -16.578193 179.414413 Fiji
FK -51.796253 -59.523613 Falkland Islands [Islas Malvinas]
FM 7.425554 150.550812 Micronesia
FO 61.892635 -6.911806 Faroe Islands
FR 46.227638 2.213749 France
GA -0.803689 11.609444 Gabon
GB 55.378051 -3.435973 United Kingdom
GD 12.262776 -61.604171 Grenada
GE 42.315407 43.356892 Georgia
GF 3.933889 -53.125782 French Guiana
GG 49.465691 -2.585278 Guernsey
GH 7.946527 -1.023194 Ghana
GI 36.137741 -5.345374 Gibraltar
GL 71.706936 -42.604303 Greenland
GM 13.443182 -15.310139 Gambia
GN 9.945587 -9.696645 Guinea
GP 16.995971 -62.067641 Guadeloupe
GQ 1.650801 10.267895 Equatorial Guinea
GR 39.074208 21.824312 Greece
GS -54.429579 -36.587909 South Georgia and the South Sandwich Islands
GT 15.783471 -90.230759 Guatemala
GU 13.444304 144.793731 Guam
GW 11.803749 -15.180413 Guinea-Bissau
GY 4.860416 -58.93018 Guyana
GZ 31.354676 34.308825 Gaza Strip
HK 22.396428 114.109497 Hong Kong
HM -53.08181 73.504158 Heard Island and McDonald Islands
HN 15.199999 -86.241905 Honduras
HR 45.1 15.2 Croatia
HT 18.971187 -72.285215 Haiti
HU 47.162494 19.503304 Hungary
ID -0.789275 113.921327 Indonesia
IE 53.41291 -8.24389 Ireland
IL 31.046051 34.851612 Israel
IM 54.236107 -4.548056 Isle of Man
IN 20.593684 78.96288 India
IO -6.343194 71.876519 British Indian Ocean Territory
IQ 33.223191 43.679291 Iraq
IR 32.427908 53.688046 Iran
IS 64.963051 -19.020835 Iceland
IT 41.87194 12.56738 Italy
JE 49.214439 -2.13125 Jersey
JM 18.109581 -77.297508 Jamaica
JO 30.585164 36.238414 Jordan
JP 36.204824 138.252924 Japan
KE -0.023559 37.906193 Kenya
KG 41.20438 74.766098 Kyrgyzstan
KH 12.565679 104.990963 Cambodia
KI -3.370417 -168.734039 Kiribati
KM -11.875001 43.872219 Comoros
KN 17.357822 -62.782998 Saint Kitts and Nevis
KP 40.339852 127.510093 North Korea
KR 35.907757 127.766922 South Korea
KW 29.31166 47.481766 Kuwait
KY 19.513469 -80.566956 Cayman Islands
KZ 48.019573 66.923684 Kazakhstan
LA 19.85627 102.495496 Laos
LB 33.854721 35.862285 Lebanon
LC 13.909444 -60.978893 Saint Lucia
LI 47.166 9.555373 Liechtenstein
LK 7.873054 80.771797 Sri Lanka
LR 6.428055 -9.429499 Liberia
LS -29.609988 28.233608 Lesotho
LT 55.169438 23.881275 Lithuania
LU 49.815273 6.129583 Luxembourg
LV 56.879635 24.603189 Latvia
LY 26.3351 17.228331 Libya
MA 31.791702 -7.09262 Morocco
MC 43.750298 7.412841 Monaco
MD 47.411631 28.369885 Moldova
ME 42.708678 19.37439 Montenegro
MG -18.766947 46.869107 Madagascar
MH 7.131474 171.184478 Marshall Islands
MK 41.608635 21.745275 Macedonia [FYROM]
ML 17.570692 -3.996166 Mali
MM 21.913965 95.956223 Myanmar [Burma]
MN 46.862496 103.846656 Mongolia
MO 22.198745 113.543873 Macau
MP 17.33083 145.38469 Northern Mariana Islands
MQ 14.641528 -61.024174 Martinique
MR 21.00789 -10.940835 Mauritania
MS 16.742498 -62.187366 Montserrat
MT 35.937496 14.375416 Malta
MU -20.348404 57.552152 Mauritius
MV 3.202778 73.22068 Maldives
MW -13.254308 34.301525 Malawi
MX 23.634501 -102.552784 Mexico
MY 4.210484 101.975766 Malaysia
MZ -18.665695 35.529562 Mozambique
NA -22.95764 18.49041 Namibia
NC -20.904305 165.618042 New Caledonia
NE 17.607789 8.081666 Niger
NF -29.040835 167.954712 Norfolk Island
NG 9.081999 8.675277 Nigeria
NI 12.865416 -85.207229 Nicaragua
NL 52.132633 5.291266 Netherlands
NO 60.472024 8.468946 Norway
NP 28.394857 84.124008 Nepal
NR -0.522778 166.931503 Nauru
NU -19.054445 -169.867233 Niue
NZ -40.900557 174.885971 New Zealand
OM 21.512583 55.923255 Oman
PA 8.537981 -80.782127 Panama
PE -9.189967 -75.015152 Peru
PF -17.679742 -149.406843 French Polynesia
PG -6.314993 143.95555 Papua New Guinea
PH 12.879721 121.774017 Philippines
PK 30.375321 69.345116 Pakistan
PL 51.919438 19.145136 Poland
PM 46.941936 -56.27111 Saint Pierre and Miquelon
PN -24.703615 -127.439308 Pitcairn Islands
PR 18.220833 -66.590149 Puerto Rico
PS 31.952162 35.233154 Palestinian Territories
PT 39.399872 -8.224454 Portugal
PW 7.51498 134.58252 Palau
PY -23.442503 -58.443832 Paraguay
QA 25.354826 51.183884 Qatar
RE -21.115141 55.536384 Réunion
RO 45.943161 24.96676 Romania
RS 44.016521 21.005859 Serbia
RU 61.52401 105.318756 Russia
RW -1.940278 29.873888 Rwanda
SA 23.885942 45.079162 Saudi Arabia
SB -9.64571 160.156194 Solomon Islands
SC -4.679574 55.491977 Seychelles
SD 12.862807 30.217636 Sudan
SE 60.128161 18.643501 Sweden
SG 1.352083 103.819836 Singapore
SH -24.143474 -10.030696 Saint Helena
SI 46.151241 14.995463 Slovenia
SJ 77.553604 23.670272 Svalbard and Jan Mayen
SK 48.669026 19.699024 Slovakia
SL 8.460555 -11.779889 Sierra Leone
SM 43.94236 12.457777 San Marino
SN 14.497401 -14.452362 Senegal
SO 5.152149 46.199616 Somalia
SR 3.919305 -56.027783 Suriname
ST 0.18636 6.613081 São Tomé and Príncipe
SV 13.794185 -88.89653 El Salvador
SY 34.802075 38.996815 Syria
SZ -26.522503 31.465866 Swaziland
TC 21.694025 -71.797928 Turks and Caicos Islands
TD 15.454166 18.732207 Chad
TF -49.280366 69.348557 French Southern Territories
TG 8.619543 0.824782 Togo
TH 15.870032 100.992541 Thailand
TJ 38.861034 71.276093 Tajikistan
TK -8.967363 -171.855881 Tokelau
TL -8.874217 125.727539 Timor-Leste
TM 38.969719 59.556278 Turkmenistan
TN 33.886917 9.537499 Tunisia
TO -21.178986 -175.198242 Tonga
TR 38.963745 35.243322 Turkey
TT 10.691803 -61.222503 Trinidad and Tobago
TV -7.109535 177.64933 Tuvalu
TW 23.69781 120.960515 Taiwan
TZ -6.369028 34.888822 Tanzania
UA 48.379433 31.16558 Ukraine
UG 1.373333 32.290275 Uganda
UM U.S. Minor Outlying Islands
US 37.09024 -95.712891 United States
UY -32.522779 -55.765835 Uruguay
UZ 41.377491 64.585262 Uzbekistan
VA 41.902916 12.453389 Vatican City
VC 12.984305 -61.287228 Saint Vincent and the Grenadines
VE 6.42375 -66.58973 Venezuela
VG 18.420695 -64.639968 British Virgin Islands
VI 18.335765 -64.896335 U.S. Virgin Islands
VN 14.058324 108.277199 Vietnam
VU -15.376706 166.959158 Vanuatu
WF -13.768752 -177.156097 Wallis and Futuna
WS -13.759029 -172.104629 Samoa
XK 42.602636 20.902977 Kosovo
YE 15.552727 48.516388 Yemen
YT -12.8275 45.166244 Mayotte
ZA -30.559482 22.937506 South Africa
ZM -13.133897 27.849332 Zambia
ZW -19.015438 29.154857 Zimbabwe
zb_id valence continent country strategy theme variable strength
1.1.1 0 Africa Gabon FSC ENV Canopy loss, gap size Direct correlation
1.1.2 1 Africa Gabon FSC ENV Carbon stock, emissions Direct correlation
1.1.3 1 Africa Gabon FSC ENV Collateral damage Direct correlation
1.1.4 1 Africa Gabon FSC ENV Ground disturbance Direct correlation
1.1.5 1 Africa Gabon FSC ECON Harvest efficiency Direct correlation
1.1.6 1 Africa Gabon FSC ENV Road and skid trail density Direct correlation
1.1.7 1 Africa Gabon FSC ECON Timber stock (sustainability of income) Direct correlation
1.1.8 0 Africa Gabon FSC ENV Tree diversity Direct correlation
1.10.1 1 Global Global FSC ENV Deforestation, fragmentation and degradation Direct correlation
1.11.1 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.11.2 1 South and Central America Brazil FSC ENV Road and skid trail density Direct correlation
1.12.1 1 Asia Malaysia FSC ENV Animal diversity Direct correlation
1.12.2 1 Asia Malaysia FSC ENV Animal diversity Direct correlation
1.13.1 1 Asia Indonesia FSC ENV Collateral damage Direct correlation
1.13.2 1 Asia Indonesia FSC ENV Road and skid trail density Direct correlation
1.14.1 1 South and Central America Brazil, Venezuela, Suriname, Paraguay FSC ENV Ground disturbance Direct correlation
1.16.1 1 South and Central America Brazil FSC ECON Profit Direct correlation
1.17.1 -1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.17.2 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.17.3 -1 South and Central America Brazil FSC ENV Collateral damage Direct correlation
1.17.4 1 South and Central America Brazil FSC ENV Ground disturbance Direct correlation
1.17.5 -1 South and Central America Brazil FSC ECON Pre-logging costs Direct correlation
1.17.6 -1 South and Central America Brazil FSC ECON Skidding cost Direct correlation
1.17.7 1 South and Central America Brazil FSC ECON Worker productivity Direct correlation
1.18.1 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.18.2 1 South and Central America Brazil FSC ENV Ground disturbance Direct correlation
1.19.1 -1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.10 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.11 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.12 0 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.13 0 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.2 0 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.3 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.4 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.5 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.6 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.7 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.8 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.19.9 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.20.1 1 Asia Indonesia FSC ENV Canopy loss, gap size Direct correlation
1.20.2 1 Asia Indonesia FSC ENV Collateral damage Direct correlation
1.20.3 0 Asia Indonesia FSC ENV Collateral damage Direct correlation
1.20.4 0 Asia Indonesia FSC ENV Collateral damage Direct correlation
1.20.5 1 Asia Indonesia FSC ENV Road and skid trail density Direct correlation
1.21.1 0 Africa Cameroon FSC ENV Collateral damage Direct correlation
1.22.1 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.22.2 1 Asia Malaysia FSC ENV Collateral damage Direct correlation
1.23.1 1 Asia Malaysia FSC ENV Collateral damage Direct correlation
1.23.2 1 Asia Malaysia FSC ENV Collateral damage Direct correlation
1.23.3 1 Asia Malaysia FSC ENV Ground disturbance Direct correlation
1.23.4 -1 Asia Malaysia FSC ECON Total cost of logging operations Direct correlation
1.23.5 -1 Asia Malaysia FSC ECON Worker productivity Direct correlation
1.26.1 -1 Pan-tropical Pan-tropical (countries not available) FSC ECON Profit Unknown
1.27.1 -1 South and Central America Brazil FSC SOC Access to land Direct correlation
1.27.2 1 South and Central America Brazil FSC SOC Awareness, empowerment, participation Direct correlation
1.27.3 1 South and Central America Brazil FSC SOC Compliance with laws and regulations Direct correlation
1.27.4 0 South and Central America Brazil FSC SOC Direct economic benefits Direct correlation
1.27.5 1 South and Central America Brazil FSC SOC Infrastructure and Institutions Direct correlation
1.27.6 1 South and Central America Brazil FSC SOC Living and working conditions of employees Direct correlation
1.28.1 1 Pan-tropical Bolivia, Brazil, French Guiana, Guyana, Malaysia, Republic of Congo, Uganda, Venezuela FSC ENV Animal diversity Direct correlation
1.29.1 1 Pan-tropical Pan-tropical (countries not available) FSC ENV Animal diversity Direct correlation
1.3.1 0 Africa Cameroon, Gabon, Republic of Congo FSC SOC Access to land Case study (loose correlation)
1.3.10 0 Africa Cameroon, Gabon, Republic of Congo FSC SOC Living and working conditions of employees Case study (loose correlation)
1.3.11 0 Africa Cameroon, Gabon, Republic of Congo FSC SOC Living and working conditions of employees Case study (loose correlation)
1.3.12 0 Africa Cameroon, Gabon, Republic of Congo FSC SOC Living and working conditions of employees Case study (loose correlation)
1.3.2 0 Africa Cameroon, Gabon, Republic of Congo FSC ENV Deforestation, fragmentation and degradation Case study (loose correlation)
1.3.3 0 Africa Cameroon, Gabon, Republic of Congo FSC ENV Illegal hunting, logging, mining Case study (loose correlation)
1.3.4 0 Africa Cameroon, Gabon, Republic of Congo FSC SOC Equality, equity, less marginalization Case study (loose correlation)
1.3.5 1 Africa Cameroon, Gabon, Republic of Congo FSC SOC Infrastructure and Institutions Case study (loose correlation)
1.3.6 1 Africa Cameroon, Gabon, Republic of Congo FSC SOC Infrastructure and Institutions Case study (loose correlation)
1.3.7 1 Africa Cameroon, Gabon, Republic of Congo FSC SOC Community wellbeing and livelihoods Case study (loose correlation)
1.3.8 1 Africa Cameroon, Gabon, Republic of Congo FSC SOC Living and working conditions of employees Case study (loose correlation)
1.3.9 1 Africa Cameroon, Gabon, Republic of Congo FSC SOC Living and working conditions of employees Case study (loose correlation)
1.30.1 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.30.2 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.30.3 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.30.4 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.32.1 1 Asia Malaysia FSC ECON Price premium Direct correlation
1.33.1 1 South and Central America Brazil FSC SOC Conflict Direct correlation
1.33.2 1 South and Central America Brazil FSC ECON Management and administration Direct correlation
1.33.3 0 South and Central America Brazil FSC ECON Management and administration Direct correlation
1.33.4 1 South and Central America Brazil FSC ECON Market access Direct correlation
1.33.5 0 South and Central America Brazil FSC ECON Price premium Direct correlation
1.33.6 0 South and Central America Brazil FSC ECON Profit Direct correlation
1.35.1 -1 South and Central America Guyana FSC ENV Canopy loss, gap size Direct correlation
1.35.10 -1 South and Central America Guyana FSC ECON Worker productivity Direct correlation
1.35.2 -1 South and Central America Guyana FSC ENV Canopy loss, gap size Direct correlation
1.35.3 1 South and Central America Guyana FSC ENV Collateral damage Direct correlation
1.35.4 1 South and Central America Guyana FSC ENV Ground disturbance Direct correlation
1.35.5 -1 South and Central America Guyana FSC ECON Pre-logging costs Direct correlation
1.35.6 -1 South and Central America Guyana FSC ECON Profit Direct correlation
1.35.7 1 South and Central America Guyana FSC ECON Skidding cost Direct correlation
1.35.8 -1 South and Central America Guyana FSC ECON Total cost of logging operations Direct correlation
1.35.9 1 South and Central America Brazil FSC ECON Total cost of logging operations Direct correlation
1.36.1 1 South and Central America Ecuador FSC ENV Ground disturbance Direct correlation
1.36.2 -1 South and Central America Ecuador FSC ECON Pre-logging costs Direct correlation
1.36.3 -1 South and Central America Ecuador FSC ECON Skidding cost Direct correlation
1.36.4 -1 South and Central America Ecuador FSC ECON Total cost of logging operations Direct correlation
1.36.5 -1 South and Central America Ecuador FSC ECON Worker productivity Direct correlation
1.37.1 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.37.2 0 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.37.3 0 South and Central America Brazil FSC ENV Collateral damage Direct correlation
1.37.4 1 South and Central America Brazil FSC ENV Ground disturbance Direct correlation
1.37.5 -1 South and Central America Brazil FSC ECON Pre-logging costs Direct correlation
1.37.6 1 South and Central America Brazil FSC ECON Profit Direct correlation
1.37.7 1 South and Central America Brazil FSC ECON Skidding cost Direct correlation
1.37.8 -1 South and Central America Brazil FSC ECON Worker productivity Direct correlation
1.38.1 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.38.10 -1 South and Central America Brazil FSC ECON Pre-logging costs Direct correlation
1.38.11 1 South and Central America Brazil FSC ECON Profit Direct correlation
1.38.12 1 South and Central America Brazil FSC ECON Profit Direct correlation
1.38.13 1 South and Central America Brazil FSC ECON Skidding cost Direct correlation
1.38.14 1 South and Central America Brazil FSC ECON Worker productivity Direct correlation
1.38.15 1 South and Central America Brazil FSC ECON Total cost of logging operations Direct correlation
1.38.16 1 South and Central America Brazil FSC ECON Total cost of logging operations Direct correlation
1.38.17 -1 South and Central America Brazil FSC ECON Worker productivity Direct correlation
1.38.18 1 South and Central America Brazil FSC ECON Skidding cost Direct correlation
1.38.2 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.38.3 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.38.4 1 South and Central America Brazil FSC ENV Canopy loss, gap size Direct correlation
1.38.5 1 South and Central America Brazil FSC ENV Collateral damage Direct correlation
1.38.6 1 South and Central America Brazil FSC ENV Collateral damage Direct correlation
1.38.7 1 South and Central America Brazil FSC ENV Ground disturbance Direct correlation
1.38.8 1 South and Central America Brazil FSC ENV Ground disturbance Direct correlation
1.38.9 -1 South and Central America Brazil FSC ECON Pre-logging costs Direct correlation
1.39.1 1 South and Central America Guyana FSC ECON Pre-logging costs Direct correlation
1.39.2 1 South and Central America Guyana FSC ECON Skidding cost Direct correlation
1.39.3 1 South and Central America Guyana FSC ECON Total cost of logging operations Direct correlation
1.40.1 0 Pan-tropical Malaysia, Ethiopia, Indonesia, Papua New Guinea, Brazil, Bolivia, Cameroon, Cambodia, Gabon, Guyana, Costa Rica, Belize, French Guiana, Central Africal Republic, Nigeria, Ghana, Laos FSC ENV Carbon stock, emissions Direct correlation
1.40.2 1 Pan-tropical Pan-tropical (countries not available) FSC ENV Collateral damage Direct correlation
1.40.3 0 Pan-tropical Pan-tropical (countries not available) FSC ENV Tree diversity Direct correlation
1.42.1 1 Asia Indonesia FSC ENV Canopy loss, gap size Direct correlation
1.42.10 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.42.11 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.42.12 1 Asia Indonesia FSC ECON Profit Direct correlation
1.42.13 1 South and Central America Brazil FSC ECON Skidding costs Direct correlation
1.42.2 1 South and Central America Brazil FSC SOC Jobs Direct correlation
1.42.3 1 Asia Indonesia FSC SOC Jobs Direct correlation
1.42.4 0 Asia Malaysia FSC SOC Jobs Direct correlation
1.42.5 1 Asia Indonesia FSC ECON Management and administration Direct correlation
1.42.6 1 Asia Malaysia FSC ECON Market access Direct correlation
1.42.7 1 South and Central America Brazil FSC ECON Price premium Direct correlation
1.42.8 0 Asia Malaysia FSC ECON Price premium Direct correlation
1.42.9 -1 South and Central America Brazil FSC ECON Profit Direct correlation
1.43.1 1 Asia Indonesia FSC SOC Community wellbeing and livelihoods Causal
1.43.10 0 Asia Indonesia FSC SOC Infrastructure and Institutions Causal
1.43.2 1 Asia Indonesia FSC SOC Direct economic benefits Causal
1.43.3 1 Asia Indonesia FSC SOC Community wellbeing and livelihoods Causal
1.43.4 1 Asia Indonesia FSC SOC Community wellbeing and livelihoods Causal
1.43.5 1 Asia Indonesia FSC SOC Community wellbeing and livelihoods Causal
1.43.6 0 Asia Indonesia FSC ENV Water regulation, erosion prevention Causal
1.43.7 1 Asia Indonesia FSC ENV Deforestation, fragmentation and degradation Causal
1.43.8 0 Asia Indonesia FSC ENV Deforestation, fragmentation and degradation Causal
1.43.9 0 Asia Indonesia FSC SOC Infrastructure and Institutions Causal
1.44.1 1 Asia Malaysia FSC ENV Collateral damage Direct correlation
1.44.10 -1 Asia Malaysia FSC ECON Worker productivity Direct correlation
1.44.2 1 Asia Malaysia FSC SOC Compliance with harvest regulations Direct correlation
1.44.3 -1 Asia Malaysia FSC ECON Pre-logging costs Direct correlation
1.44.4 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.44.5 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.44.6 1 Asia Malaysia FSC ENV Road and skid trail density Direct correlation
1.44.7 1 Asia Malaysia FSC ENV Set asides and buffer zones Direct correlation
1.44.8 1 Asia Malaysia FSC ECON Timber stock (sustainability of income) Direct correlation
1.44.9 -1 Asia Malaysia FSC ECON Total cost of logging operations Direct correlation
1.45.1 -1 Asia Indonesia FSC ECON Profit Direct correlation
1.45.2 0 Asia Indonesia FSC ECON Total cost of logging operations Direct correlation
1.46.1 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.46.2 -1 Asia Malaysia FSC ECON Total cost of logging operations Direct correlation
1.47.1 0 Africa Gabon FSC ECON Profit Direct correlation
1.47.2 -1 Africa Gabon FSC ECON Total cost of logging operations Direct correlation
1.48.1 -1 Asia Malaysia FSC ECON Profit Direct correlation
1.48.2 0 Asia Malaysia FSC ECON Total cost of logging operations Direct correlation
1.49.1 0 Asia Malaysia FSC ECON Profit Direct correlation
1.49.2 1 Asia Malaysia FSC ECON Total cost of logging operations Direct correlation
1.5.1 1 South and Central America Bolivia FSC ECON Price premium Direct correlation
1.51.1 0 South and Central America Mexico FSC ENV Deforestation, fragmentation and degradation Causal
1.52.1 1 Pan-tropical Belize, Bolivia, Brazil, Ghana, Malaysia, Costa Rica, Ecuador, India, Indonesia, Malaysia, FSC ENV Animal diversity Direct correlation
1.52.2 1 Pan-tropical Belize, Bolivia, Brazil, Ghana, Malaysia, Costa Rica, Ecuador, India, Indonesia, Malaysia, FSC ENV Animal diversity Direct correlation
1.52.3 1 Pan-tropical Belize, Bolivia, Brazil, Ghana, Malaysia, Costa Rica, Ecuador, India, Indonesia, Malaysia, FSC ENV Animal diversity Direct correlation
1.52.4 1 Pan-tropical Belize, Bolivia, Brazil, Ghana, Malaysia, Costa Rica, Ecuador, India, Indonesia, Malaysia, FSC ENV Tree diversity Direct correlation
1.52.5 0 Pan-tropical Belize, Bolivia, Brazil, Ghana, Malaysia, Costa Rica, Ecuador, India, Indonesia, Malaysia, FSC ENV Animal diversity Direct correlation
1.7.1 1 Asia Malaysia FSC ENV Animal diversity Direct correlation
1.7.2 1 Asia Malaysia FSC ENV Carbon stock, emissions Direct correlation
1.7.3 1 Asia Malaysia FSC ENV Set asides and buffer zones Direct correlation
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script src="https://d3js.org/d3.v4.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>
<style>
body {margin:0; padding: 0;}
.deleted {color: #ff0000;}
div.container {
width: 1200px; height: 500px;
position:relative;
}
div.row {
position: absolute;
width: 100%;
height: 60px;
overflow: hidden;
}
div.cell {
position: absolute;
width: 70px;
height: 56px;
text-align:center;
line-height: 56px;
}
div.cell.chart {
width:1130px;
}
div.chartcells {
position:absolute;
width: 19px; height: 19px;
}
div.chartcells.minus {
background: #D7067C;
}
div.chartcells.plus {
background: #309223;
}
div.chartcells.neutral {
background: #FACB57;
}
div.chartcells.weak {
opacity: 0.5;
}
</style>
</head>
<body>
<script src="https://d3js.org/d3-queue.v3.min.js"></script>
<svg width="960" height="500"></svg>
<script>
var countriesKeyed;
var dataByTheme;
var dataByVariable;
var margins = { top: 20, left: 75, bottom: 20, right: 20 };
var svg = d3.select('svg'),
width = +svg.attr('width') - margins.left - margins.right,
height = +svg.attr('height') - margins.top - margins.bottom;
var squareWidth; // to do: set the square width based on chart width & number of data points
var yScale = d3.scaleOrdinal().range([height, 0]);
d3.queue()
.defer(d3.csv, 'countries.csv')
.defer(d3.csv, 'data.csv')
.await(main);
function main(error, countries, data) {
if (error) throw error;
// parse country data
countries = countries.map(function(d) {
return {
lat: +d.latitude,
lon: +d.longitude,
abrev: d.country,
count: 0,
name: d.name
}
});
// parse our valence value into a number
data.forEach(function(d) {
d.valence = +d.valence;
d.variable = d.variable.split(',').map(v => v.trim())
})
// create a d3 map, not the same as Array.prototype.map
countriesKeyed = d3.map(countries, function(d) {
return d.name;
});
// unique list of "themes"
var themes = data.reduce(function(acc, d) {
if (acc.indexOf(d.theme) === -1) {
acc.push(d.theme);
}
return acc;
}, [])
.sort();
// unique variable names
var variables = data.reduce(function(acc, d) {
d.variable.forEach(function(v) {
if (acc.indexOf(v) === -1) acc.push(v);
})
return acc;
}, [])
.sort();
// nest our data on theme, then either "plus" or "minus" depending on value of "valence"
dataByTheme = d3.nest()
.key(function(d) { return d.theme })
.key(function(d) { if (d.valence > 0) { return 'plus'; } return 'minus'; })
.entries(data);
dataByTheme = d3.map(dataByTheme, function(d) {
return d.key;
});
console.log(dataByTheme);
// nest our data by variable, then either "plus" or "minus"
dataByVariable = variables.map(function(v) {
var x = { name: '', values: [] };
data.forEach(function(d) {
if (d.variable.indexOf(v) !== -1) {
x.name = v;
x.values.push(d);
}
});
return x;
});
dataByVariable = d3.map(dataByVariable, function(d) {
return d.name;
});
// set our y scale domain
yScale.domain(themes);
}
</script>
</body>
function draw(data, group, container, strength) {
strength = strength || false;
// Start by getting a distinct list of the groups that make up the rows in the chart
console.log(data);
var groups = get_distinct(data, group);
console.log(groups)
var summaries = [];
groups.forEach(function(g){
var out = {"name": g, "chart": {"plus": [], "minus": []}};
data.forEach(function(row){
if (strength && row.strength != "Direct correlation") { console.log('yo'); return} ;
if (row[group] == g) {
row.valence > 0 ? out["chart"]["plus"].push(row) : out["chart"]["minus"].push(row);
}
});
summaries.push(out);
});
console.log(summaries)
// get the container
var container = d3.select(container);
var rows = container.selectAll("div.row")
.data(summaries, function(d) { return d.name; });
// create the rows
var rowsenter = rows.enter()
.append("div")
.attr("class","row")
.style("top", function(d,i) {return (i * 60) + "px"});
// create cells
rowsenter
.selectAll("div.cell")
.data(function(d) { return d3.entries(d) })
.enter()
.append("div")
.attr("class","cell")
.classed("chart", function(d) { return d.key == "chart"; })
.style("top","4.32px")
.style("left", function(d,i) { return ((i * 70) + 2) + "px"; })
.text(function(d) { return d.key == "name" ? d.value : "" })
// .attr("class", function(d) { return d.key == "chart" ? "chart" : "" });
var rowsexit = rows.exit()
.style("background", "red")
.transition()
.duration(750)
.style("opacity", 0)
.remove();
var plus = rowsenter.selectAll("div.chart").selectAll("div.chartcells.plus")
.data(function(d) { return d.value.plus }, function(d) { return d.zb_id });
var plusenter = plus.enter()
.append("div")
.classed("chartcells","true")
.classed("plus","true")
.classed("weak", function(d) {return d.strength != "Direct correlation" ? true : false})
.style("top","6px")
.style("left",function(d,i) {return (i * 20)+ "px"});
plusexit = plus.exit()
.style("background", "red")
.transition()
.duration(750)
.style("opacity", 0)
.remove();
var minus = rowsenter.selectAll("div.chart").selectAll("div.chartcells.minus")
.data(function(d) { return _.sortBy(d.value.minus, "valence") }, function(d) { return d.zb_id });
var minusenter = minus.enter()
.append("div")
.classed("chartcells","true")
.classed("minus", function(d) { return d.valence < 0 ? true : false })
.classed("neutral",function(d) { return d.valence * 1 == 0 ? true : false })
.classed("weak", function(d) {return d.strength != "Direct correlation" ? true : false})
.style("top","28px")
.style("left",function(d,i) {return (i * 20)+ "px"})
var minusexit = minus.exit()
.style("background", "red")
.transition()
.duration(750)
.style("opacity", 0)
.remove();
} // draw
// ex:
// setTimeout(function() {
// data.splice(0,1);
// draw();
// },2000);
// Things to try to see animation:
// data.splice(0,1)
// draw();
// resetSheet();
// supports a single field name e.g. "name"
// or a subfield in the form of "chart.minus" (no more dimensions than 2 for a subfield)
function custom_sort(data, field, desc=false) {
var subfield = false, subfields = [];
if (field.indexOf(".") > -1) {
subfield = true;
var subfields = field.split('.');
}
//
var sorted = _.sortBy(data, function(o) {
return subfield ? o[subfields[0]][subfields[1]] : o[field];
})
return desc ? sorted.reverse() : sorted;
}
function resetSheet() {
d3.selectAll("div.row")
.transition()
.duration(300)
.style("top", function(d,i) {return (i * 60) + "px"});
};
// called by buttons
function sortSheet(field, reverse=false) {
var data = d3.selectAll("div.row").data();
// sort
data = custom_sort(data, field, reverse);
d3.selectAll("div.row").data(data, function(d) {return d.name})
.transition()
.duration(500)
.style("top", function(d,i) {return (i * 60) + "px"});
};
function filterByEvidence() {
// TO DO
// read about transition and applying data
// what if filter here was just applying an entirely new dataset?
// plus first
var plus = d3.selectAll("div.chartcells.plus").data();
plus = plus.filter(function(d) {return d.strength != "Direct correlation"});
var minus = d3.selectAll("div.chartcells.minus").data();
minus = minus.filter(function(d) {return d.strength != "Direct correlation"});
d3.selectAll("div.chartcells.plus").data(plus, function(d) {return d.zb_id})
.transition()
.duration(500)
// .style("left",function(d,i) {return (i * 20)+ "px"});
.style("opacity",0);
d3.selectAll("div.chartcells.minus").data(minus, function(d) {return d.zb_id})
.transition()
.duration(500)
// .style("left",function(d,i) {return (i * 20)+ "px"});
.style("opacity",0);
}
// get distinct list by key from an array of objects
function get_distinct(array, key) {
var unique = {};
var distinct = [];
for( var i in array ){
if( typeof(unique[array[i][key]]) == "undefined"){
distinct.push(array[i][key]);
}
unique[array[i][key]] = 0;
}
return distinct;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment