Coder Social home page Coder Social logo

ubc-mds / obesity-explorer Goto Github PK

View Code? Open in Web Editor NEW
0.0 3.0 5.0 5.85 MB

A dashboard project for Group #1

Home Page: https://obesity-explorer.herokuapp.com/

License: MIT License

HTML 98.12% Python 1.88%
visualization viz dashboard dash obesity

obesity-explorer's Introduction

Obesity Explorer

Authors: Dustin Burnham, Javairia Raza, Rafael Pilliard Hellwig, Tanmay Sharma

Using the Obesity Dashboard

Obesity has been an increasing medical concern across the world in the 21st century. It is a medical precursor to diseases such as diabetes, heart diseases, high blood pressure and certain types of cancers. In spite of this, most people know very little about this disease, and are unaware of the factors that increase its relative risk. To increase awareness and deepen understanding, this Obesity Dashboard allows users to explore obesity trends, probe associations with other variables and factors, and discover patterns related to this global epidemic.

Foo

Contributing to the Dashboard

We love contributions! If you wish to help with this project or find a bug, please first review our contributing guidelines. Contributors are encouraged to clone the repository and install the conda environment from the project root:

conda env create -y -f obesity.yaml
conda activate obesity

The app can then be run locally from the project root via:

python src/app.py

The authors implement apps in both Python and R using the Dash framework. Details of the author's vision can be found in the proposal document.

obesity-explorer's People

Watchers

 avatar  avatar  avatar

obesity-explorer's Issues

Code - Nomenclature

Document the nomenclature being used by all team members across code to standardize development.

Data discussion

Discussing ideas for finalizing the dataset for the dashboard.

Peer Feedback

Hello developers of this Obesity Dashboard,

I am Bruhat. A policymaker for the state government of Baja California Sur, Mexico. Fast food chains from America have been expanding rapidly in our jurisdiction. Our medical advisers have brought up alarming concerns about Obesity in young adults caused by this expansion. We set out to find the long term effects of this expansion and your dashboard perfectly fit our needs. We have been trying analyse countries where this rapid expansion occurred and it's consequences on the obesity rate over the years.

  • Your plot on world obesity with years gave us good insights about the countries we were interested in and the filter by country option helped us isolate trends to our geographic needs. We were able to put together insights from your dashboard along with fast food chain's expansion data to back our medical adviser's hypothesis.
  • If I could offer some constructive criticism, we found that the tool-tip feature in the world obesity plot was a little distracting and redundant as there was already an option to filter by the required country.
  • That being said, we really liked the dashboard and found it very useful.

Fix data cleaning join to include missing countries

I found a problem in our combo dataset, as a number of countries are missing. I think this is a likely a join error on countries in the data cleaning.

Country names also need to be mapped correctly to work with Altair.

New Dataset Findings

Please see add your findings regarding the new dataset here.

Dataset should contain the variables on sex, country, year and continent/region.
Is the dataset complete?
What do the other variables look like?

Updating Readme

Expand on the README file to be a welcoming place for anyone coming to your project for the first time. For your project, your README should cater to at least two groups of people (on bigger projects these can be separated and put in different files):

Those potentially interested in using your dashboard:

Include motivation behind your project and clearly explain what problem you are solving and why it is important.
You do not have to include detailed usage instructions, just high level what they can do in your dashboard and and the deployed link.
This is a good example

Those interesting in helping you develop your dashboard
Potential contributors are interested in the above as well, but also need to know how they can install your app and how to run it locally (maybe they are great in Altair but have never used Dash).
Suggestions for what you would like help with and how to work in your project, some of this can go in contributing also.
This is an example of a program I made as part of my thesis.

Meeting Notes

Documenting agendas and minutes from team meetings.

Milestone 1 Submission

  • Create Release
  • Add link to Canvas submission document
  • Submit submission document to Canvas

Milestone 1 feedback

Hey Group 1,

Congrats on completing your eponymous milestone! You're off to a great start. Your proposal was well done overall and was quite well written (just watch out for typos). The main note I'd make is that while the usage scenario was well written, merging the following bullets directly into the text would've made things a bit more cohesive. Some parts could also have been a bit more concise.

With regards to your dashboard:

  • The plan seems solid and like a reasonable amount of work for the final project. That said, you may want to start with only one plot in the bottom left for milestone 2 (for the sake of time).
  • Since your main focus is obesity, will those bottom left plots stay the same as you change the factor? Or will they also change? This isn't clear to me from your description.
  • It's also not clear to me how exactly the aggregation feature will be used, this could be explained a bit more explicitly
  • Finally, as you develop your dashboard from this sketch, be sure to give some thought to the layout of the panels themselves and what will make the most efficient use of space without overcrowding. At the moment this feels simultaneously a bit crowded and a bit wasteful of space (due to aspect ratios and such)

Personas

Discussion regarding the different personas for the dashboard.

Time series plot

  • Top left plot on the proposal sketch.
  • explore visualizations for a time-series plot of obesity across 1975-2016.

Chloropleth plot

  • Top right corner plot in the sketch
  • Global map and ranking/coloring based on rates of calculated variables.

Milestone 2 Feedback

Halfway there! (or really 3/4 :) ) Great job on milestone 2. Your reflection was excellent and it's clear you've very thoroughly tested your app. I think overall, it looks great and does well in presenting a lot of information in a relatively compact way by making good use of interactivity. Most of the problems I noticed were already noted in your reflection, but here are a few additional ones:

  • opacity a bit low on scatter plot
  • could consider fading/greying out countries in map rather than removing
  • hanging color scale appears when no countries highlighted
  • minor details that should be modified/clarified in design:
    • I don't have any great ideas on implementation, but would be nice to see the 3 variable filters (besides year) tied together in some way, as they are when treated as grouping variables.
    • maybe rename income group to clarify it's describing country not individual (unlike sex filter)

I also thought it might be useful to give my opinion on which of the points listed in your reflection would be most useful to fix/implement, so here are my top few listed roughly in order of importance:

  1. Single year vertical line for selected year
  2. Move year slider below time series plot
  3. Fix missing data issue (map and scatter plot)
  4. Map tooltip stopped working
  5. If there is an empty selection, everything should be shown by default
  6. Add trend lines to the factor plot

Milestone 2 Checklist

  • Incorporate Milestone 1 feedback (Dustin - PR in)

  • Canvas submission.html (Javairia)

  • Heroku link added to READMD.md (Tanmay)

  • Implemented correct file structure (Dustin)

  • Create environment.yaml file (Raf): See #44

  • Move proposal to doc folder (Javairia)

  • Dashboard documentation (Raf)

  • Reflection document (Group)

  • Add documentation to functions in src/app.py (Tanmay)

  • Improve the readme (optional)

  • Make GIF of prototype and add to README (Raf): See #45

Proposal

Proposal document:

  • Motivation and purpose (Tanmay)
  • Description of the data (Javairia)
  • Research questions you are exploring (Raf)

Bar Chart plot

  • Bar chart plot for the bottom right corner
  • Review of top countries with interactive widgets for year, gender

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.