Giter VIP home page Giter VIP logo

malaria-mapping's Introduction

Mapping for Malaria Elimination

Visualize the mapping efforts of HOT and DigitalGlobe support of Malaria Elimination

🌍 https://labs.mapbox.com/malaria-mapping

πŸ“– https://www.mapbox.com/blog/world-malaria-day

See the Tasking Manager to learn how you can help and finish mapping 500,000 km2!

Malaria mapping progress

Requirements

npm install .
npm install -g osm-qa-filter

Data Processing

You can find the data processing scripts in scripts.

cd ./scripts
  1. Prepare the QA tiles extract for the affected regions
./download-extract.sh
  1. Filter buildings using osm-qa-filter to limit it to buildings edited after 1st of July 2016.
osm-qa-filter \
    -m malaria.qa.mbtiles -o malaria_buildings.geojson \
    --filter '["all", ["has", "building"], [">=", "@timestamp", 1467331200]]'
  1. Filter to the mapped area
./filter-area.js -i malaria_buildings.geojson -o malaria_buildings_filtered.geojson
  1. Add the date as attribute to the features.
./day.js -i malaria_buildings_filtered.geojson -o malaria_buildings_day.geojson
  1. Calculate centroids of all the buildings
./centroid.js -i malaria_buildings_day.geojson -o malaria_buildings_day_centroid.geojson
  1. Encode vector tiles (polygons for high zoom levels and points for low zoom levels) and stitch them back together into a single MBTiles.
tippecanoe --layer malaria_building -o malaria_buildings.mbtiles --include "@day" --minimum-zoom=11 --maximum-zoom=13 < malaria_buildings_day.geojson
tippecanoe --layer malaria_building -o malaria_buildings_low.mbtiles --include "@day" --minimum-zoom=0 --maximum-zoom=10 < malaria_buildings_day_centroid.geojson
./patch.sh malaria_buildings_low.mbtiles malaria_buildings.mbtiles
echo "update metadata set value=0 where name = 'minzoom';" | sqlite3 malaria_buildings.mbtiles
rm malaria_buildings_low.mbtiles
  1. Calculate buildings per day and total unique contributors
./building-totals.js -i malaria_buildings_day_centroid.geojson -o malaria_buildings_by_day.json
./contributor-totals.js -i malaria_buildings_day.geojson -o malaria_contributors.json
  1. Upload the vector tiles to Mapbox Studio!

Generate Daily Statistics

You can find the data processing scripts in scripts.

cd ./scripts
./generate-day-stats.sh

This will generate a CSV file with daily statistics to show the progress.

malaria-mapping's People

Contributors

kepta avatar kupendrayadav avatar lukasmartinelli avatar mikelmaron avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

malaria-mapping's Issues

Design suggestions

Take 'em or leave 'em!

I know it's late in the game, but I just have to throw it out thereβ€” porting this design to the Mapbox build of Assembly couuuuld be worth it, particularly for typography's sake. If you don't have the time, I would suggest not using base's fancy class (which uses the outdated Brandon font) and just stick to Open Sans :)

Color
Try using a color that contrasts the map style a bit more. Since you are going with this blue theme, perhaps try base's fill-navy-dark? Also, I would play with eliminating the gray border on the right side of the sidebar.

Type
Add a prose class to your paragraphs, and give them a little breathing room up top! Also, I think you could afford to use an h2 for your main heading. There may be an intent that I'm not aware of, but it seems that the two separated paragraphs of prose could be combined up top.

screen shot 2017-04-24 at 4 26 05

Counter
Overall, this could use a little clearer hierarchy. Here's a design suggestion that doesn't use fancy and deemphasizes the date. I also think having the play bar on the bottom connects it to the date a bit more. With these changes, I would make sure this section has no additional padding and is just as wide as the paragraph text:

screen shot 2017-04-24 at 4 39 43

Flags
Love these lil flags! I would add an active state to show what's currently selected. Also give them a bit more breathing room:

screen shot 2017-04-24 at 4 54 37

@lukasmartinelli if you have any questions, you can hit me up on slack or just come over to my desk 😸

text on project for sidebar

and for focus areas.

wanted to focus on a few good stories from the mapping efforts -- looking for ideas / photos from the partnership. especially impact on the actual malaria efforts, local mapping teams, remote effort

partial day step

is it possible to animate through the data based on hours, or only whole days?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.