.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/discovery/plot_airnow.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_discovery_plot_airnow.py: Airnow Data ----------- This example shows the different ways to pull air quality information from EPA's AirNow API for a station near to SGP .. GENERATED FROM PYTHON SOURCE LINES 10-56 .. image-sg:: /auto_examples/discovery/images/sphx_glr_plot_airnow_001.png :alt: act_datastream AQI on 20220501 :srcset: /auto_examples/discovery/images/sphx_glr_plot_airnow_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none Size: 0B Dimensions: (index: 0) Coordinates: * index (index) int64 0B Data variables: DateIssue (index) object 0B DateForecast (index) object 0B ReportingArea (index) object 0B StateCode (index) object 0B Latitude (index) object 0B Longitude (index) object 0B ParameterName (index) object 0B AQI (index) object 0B CategoryNumber (index) object 0B CategoryName (index) object 0B ActionDay (index) object 0B Discussion (index) object 0B Size: 0B Dimensions: (index: 0) Coordinates: * index (index) int64 0B Data variables: DateObserved (index) object 0B HourObserved (index) object 0B LocalTimeZone (index) object 0B ReportingArea (index) object 0B StateCode (index) object 0B Latitude (index) object 0B Longitude (index) object 0B ParameterName (index) object 0B AQI (index) object 0B CategoryNumber (index) object 0B CategoryName (index) object 0B Size: 584B Dimensions: (time: 13) Coordinates: * time (time) datetime64[us] 104B 2022-05-01 ... 2022-05-01T1... sites 0: # This first example will get the forcasted values for the date passed # at stations within 100 miles of the Zipcode. Can also use latlon instead as # results = act.discovery.get_airnow_forecast(token, '2022-05-01', distance=100, # latlon=[41.958, -88.12]) # If the username and token are not set, use the existing sample file results = act.discovery.get_airnow_forecast(token, '2022-05-01', zipcode=74630, distance=100) # The results show a dataset with air quality information from Oklahoma City # The data is not indexed by time and just a rudimentary xarray object from # converted from a pandas DataFrame. Note that the AirNow API labels the data # returned as AQI. print(results) # This call gives the daily average for Ozone, PM2.5 and PM10 results = act.discovery.get_airnow_obs(token, date='2022-05-01', zipcode=74630, distance=100) print(results) # This call will get all the station data for a time period within # the bounding box provided. This will return the object with time # as a coordinate and can be used with ACT Plotting to plot after # squeezing the dimensions. It can be a 2D time series lat_lon = '-98.172,35.879,-96.76,37.069' results = act.discovery.get_airnow_bounded_obs( token, '2022-05-01T00', '2022-05-01T12', lat_lon, 'OZONE,PM25', data_type='B' ) # Reduce to 1D timeseries results = results.squeeze(dim='sites', drop=False) print(results) # Plot out data but note that Ozone was not return in the results display = act.plotting.TimeSeriesDisplay(results) display.plot('PM2.5', label='PM2.5') display.plot('AQI', label='AQI') plt.legend() plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 1.594 seconds) .. _sphx_glr_download_auto_examples_discovery_plot_airnow.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_airnow.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_airnow.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_airnow.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_