Giter VIP home page Giter VIP logo

airpyllution's Introduction

airpyllution

codecov build deploy

airpyllution is a Python package for visualizing or obtaining future, historic and current air pollution data using the OpenWeather API. Our goal is to enable users the ability to explore air pollution levels in locations around the world by providing visual charts and graphs. We make the data accessible and easy to comprehend in just a few lines of code.

Although there is an abundance of python weather packages and APIs in the Python ecosystem (e.g. python-weather, weather-forecast), this particular package looks at specifically air pollution data and uses the Air Pollution API from OpenWeather. This is a unique package which provides simple and easy to use functions and allows users to quickly access and visualise data.

The data returned from the API includes the polluting gases such as Carbon monoxide (CO), Nitrogen monoxide (NO), Nitrogen dioxide (NO2), Ozone (O3), Sulphur dioxide (SO2), Ammonia (NH3), and particulates (PM2.5 and PM10).

Using the OpenWeatherMap API requires sign up to gain access to an API key.
For more information about API call limits and API care recommendations please visit the OpenWeather how to start page.

Functions

This package contains 3 functions:

  • get_air_pollution()
  • get_pollution_history()
  • get_pollution_forecast()

get_air_pollution()

Fetches the air pollution levels based on a location. Based on the values of the polluting gases, this package uses the Air Quality Index to determine the level of pollution for the location and produces a coloured map of the area displaying the varying regions of air quality.

get_pollution_history()

Requires a start and end date and fetches historic air pollution data for a specific location. The function returns a data frame with the values of the polluting gases over the specified date range.

get_pollution_forecast()

Fetches air pollution data for the next 5 days for a specific location. The function returns a time series plot of the predicted pollution levels.

Installation

$ pip install airpyllution

Usage and Example

readthedocs

  1. Create an OpenWeather API Key
  2. Install airpyllution
  3. Refer to ReadTheDocs for a usage guide and examples.

To use the package, import the package with the following commands:

from airpyllution.airpyllution import get_air_pollution
from airpyllution.airpyllution import get_pollution_history
from airpyllution.airpyllution import get_pollution_forecast

Retrieve historic pollution data with specified date range and location:

get_pollution_history(1606488670, 1606747870, 49.28, 123.12, api_key)

Generate an interactive map containing current pollution data by location:

get_air_pollution(49.28, 123.12, api_key, "Current Air Pollution")

Generate a time-series line chart of forecasted air pollution data:

import altair as alt
alt.renderers.enable("html");

get_pollution_forecast(49.28, 123.12, api_key)

Contributors

  • Christopher Alexander (@christopheralex)
  • Daniel King (@danfke)
  • Mel Liow (@mel-liow)

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

airpyllution was created by Christopher Alexander, Daniel King, Mel Liow. It is licensed under the terms of the Hippocratic License 3.0.

Credits

airpyllution was created with cookiecutter and the py-pkgs-cookiecutter template.

airpyllution's People

Contributors

christopheralex avatar danfke avatar mel-liow avatar

Stargazers

 avatar  avatar

Watchers

 avatar

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.