Skip to content

Instantly share code, notes, and snippets.

@lbesnard
Last active April 8, 2019 02:41
Show Gist options
  • Save lbesnard/2fc4eb3e39a647fd5fcfe440e72cd448 to your computer and use it in GitHub Desktop.
Save lbesnard/2fc4eb3e39a647fd5fcfe440e72cd448 to your computer and use it in GitHub Desktop.
Access of SOOP TRV Near Realtime data using WMS/WFS capabilities from Geoserver
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Access of SOOP TRV Near Realtime data using WMS/WFS capabilities from Geoserver\n",
"\n",
"In the following examples, we will demonstrate how to use the OWSLib python package to query the AODN geoserver to retrieve near real time SOOP TRV"
]
},
{
"cell_type": "code",
"execution_count": 70,
"metadata": {},
"outputs": [],
"source": [
"from owslib.etree import etree\n",
"from owslib.fes import PropertyIsLike, PropertyIsEqualTo, PropertyIsGreaterThan, BBox, And\n",
"from owslib.wfs import WebFeatureService\n",
"from owslib.wms import WebMapService\n",
"import os\n",
"import xml.etree.ElementTree as ET\n",
"\n",
"GEOSERVER_URL = 'http://geoserver-123.aodn.org.au/geoserver'\n",
"GEOSERVER_WFS_LAYER = '{geoserver_url}/wfs'.format(geoserver_url=GEOSERVER_URL)\n",
"GEOSERVER_WMS_LAYER = '{geoserver_url}/wms'.format(geoserver_url=GEOSERVER_URL)"
]
},
{
"cell_type": "code",
"execution_count": 71,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'AODN Web Mapping Services (WMS)'"
]
},
"execution_count": 71,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"wms = WebMapService(GEOSERVER_WFS_LAYER, version='1.1.1')\n",
"wms.identification.title"
]
},
{
"cell_type": "code",
"execution_count": 72,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['imos:aad_so_cpr_map', 'imos:aatams_biologging_penguin_data', 'imos:aatams_biologging_penguin_map', 'imos:aatams_biologging_shearwater_data', 'imos:aatams_biologging_shearwater_map']\n"
]
}
],
"source": [
"wms_wfs_ls = list(wms.contents) # list containing ALL IMOS/AODN geoserver layers\n",
"print wms_wfs_ls[0:5]"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['imos:soop_trv_trajectory_data', 'imos:soop_trv_trajectory_map']\n"
]
}
],
"source": [
"aodn_collection_to_search_str = \"TRV\"\n",
"matching = [s.lower() for s in wms_wfs_ls if aodn_collection_to_search_str.lower() in s]\n",
"print matching"
]
},
{
"cell_type": "code",
"execution_count": 74,
"metadata": {},
"outputs": [],
"source": [
"layer1_wms_name = 'imos:soop_trv_trajectory_map'\n",
"layer1_wfs_name = 'imos:soop_trv_trajectory_data'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Information in the WMS (map) layer for SOOP Tropical Research Vessel\n",
"## listing the different variables available in the WMS\n",
"\n",
"The WMS is used for visualisation on the AODN portal:\n",
"https://portal.aodn.org.au/search?uuid=8af21108-c535-43bf-8dab-c1f45a26088c\n",
"\n",
"However the WMS contains valuable information to know what cruises are available to download:"
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Index([u'geometry.coordinates', u'geometry.type', u'geometry_name', u'id',\n",
" u'properties.CPHL_b', u'properties.PSAL_b', u'properties.TEMP_b',\n",
" u'properties.TURB_b', u'properties.colour', u'properties.metadata_uuid',\n",
" u'properties.platform_code', u'properties.time_coverage_end',\n",
" u'properties.time_coverage_start', u'properties.trip_id',\n",
" u'properties.vessel_name', u'type'],\n",
" dtype='object')\n"
]
}
],
"source": [
"wfs = WebFeatureService(url=GEOSERVER_WFS_LAYER, version='1.1.0', timeout=30)\n",
"trv_nrt = wfs[layer1_wms_name]\n",
"\n",
"response = wfs.getfeature(typename=layer1_wms_name, outputFormat='application/json', maxfeatures=1)\n",
"res = response.read()\n",
"\n",
"import json\n",
"json_output = json.dumps(json.loads(res))\n",
"\n",
"from pandas.io.json import json_normalize\n",
"data = json.loads(json_output)\n",
"df_trv = json_normalize(data['features'])\n",
"\n",
"wms_columns = df_trv.columns\n",
"print wms_columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## QUERY the WMS (map) to find the cruises available since Jan 2018\n"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>geometry.coordinates</th>\n",
" <th>geometry.type</th>\n",
" <th>geometry_name</th>\n",
" <th>id</th>\n",
" <th>properties.CPHL_b</th>\n",
" <th>properties.PSAL_b</th>\n",
" <th>properties.TEMP_b</th>\n",
" <th>properties.TURB_b</th>\n",
" <th>properties.colour</th>\n",
" <th>properties.metadata_uuid</th>\n",
" <th>properties.platform_code</th>\n",
" <th>properties.time_coverage_end</th>\n",
" <th>properties.time_coverage_start</th>\n",
" <th>properties.trip_id</th>\n",
" <th>properties.vessel_name</th>\n",
" <th>type</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>[[146.8903, -19.229], [147.0159, -19.1785], [1...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e7572...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>#86F3D1</td>\n",
" <td>7F74160C-6C3A-418D-E054-0010E056919A</td>\n",
" <td>VNCF</td>\n",
" <td>2019-01-18T04:35:18Z</td>\n",
" <td>2019-01-14T18:55:02Z</td>\n",
" <td>7054</td>\n",
" <td>Cape Ferguson</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>[[146.912, -19.0917], [147.0706, -18.6449], [1...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e7572...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>#86F3D1</td>\n",
" <td>7E972456-6EEC-5698-E054-0010E056919A</td>\n",
" <td>VNCF</td>\n",
" <td>2019-01-13T05:31:41Z</td>\n",
" <td>2019-01-03T19:21:08Z</td>\n",
" <td>7053</td>\n",
" <td>Cape Ferguson</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>[[141.3771, -10.7689], [141.2086, -10.8286], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e7572...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>#0C6E0D</td>\n",
" <td>80B5076F-F3BA-2CAD-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-02-09T19:58:04Z</td>\n",
" <td>2019-01-31T14:00:04Z</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>[[122.1995, -18.0146], [122.1381, -17.9716], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e7572...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>7915B80C-33C1-019B-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2018-11-03T02:55:45Z</td>\n",
" <td>2018-10-25T04:32:03Z</td>\n",
" <td>7000</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>[[146.8251, -19.22], [146.699, -19.0492], [146...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e7572...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>#86F3D1</td>\n",
" <td>8195996F-0FA0-6A06-E054-0010E056919A</td>\n",
" <td>VNCF</td>\n",
" <td>2019-02-11T01:07:42Z</td>\n",
" <td>2019-02-05T21:43:20Z</td>\n",
" <td>7109</td>\n",
" <td>Cape Ferguson</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" geometry.coordinates geometry.type \\\n",
"0 [[146.8903, -19.229], [147.0159, -19.1785], [1... LineString \n",
"1 [[146.912, -19.0917], [147.0706, -18.6449], [1... LineString \n",
"2 [[141.3771, -10.7689], [141.2086, -10.8286], [... LineString \n",
"3 [[122.1995, -18.0146], [122.1381, -17.9716], [... LineString \n",
"4 [[146.8251, -19.22], [146.699, -19.0492], [146... LineString \n",
"\n",
" geometry_name id \\\n",
"0 geom soop_trv_trajectory_map.fid--55653d83_169e7572... \n",
"1 geom soop_trv_trajectory_map.fid--55653d83_169e7572... \n",
"2 geom soop_trv_trajectory_map.fid--55653d83_169e7572... \n",
"3 geom soop_trv_trajectory_map.fid--55653d83_169e7572... \n",
"4 geom soop_trv_trajectory_map.fid--55653d83_169e7572... \n",
"\n",
" properties.CPHL_b properties.PSAL_b properties.TEMP_b properties.TURB_b \\\n",
"0 True True True False \n",
"1 True True False True \n",
"2 True True True False \n",
"3 True True True True \n",
"4 True True False True \n",
"\n",
" properties.colour properties.metadata_uuid \\\n",
"0 #86F3D1 7F74160C-6C3A-418D-E054-0010E056919A \n",
"1 #86F3D1 7E972456-6EEC-5698-E054-0010E056919A \n",
"2 #0C6E0D 80B5076F-F3BA-2CAD-E054-0010E056919A \n",
"3 #0C6E0D 7915B80C-33C1-019B-E054-0010E056919A \n",
"4 #86F3D1 8195996F-0FA0-6A06-E054-0010E056919A \n",
"\n",
" properties.platform_code properties.time_coverage_end \\\n",
"0 VNCF 2019-01-18T04:35:18Z \n",
"1 VNCF 2019-01-13T05:31:41Z \n",
"2 VMQ9273 2019-02-09T19:58:04Z \n",
"3 VMQ9273 2018-11-03T02:55:45Z \n",
"4 VNCF 2019-02-11T01:07:42Z \n",
"\n",
" properties.time_coverage_start properties.trip_id properties.vessel_name \\\n",
"0 2019-01-14T18:55:02Z 7054 Cape Ferguson \n",
"1 2019-01-03T19:21:08Z 7053 Cape Ferguson \n",
"2 2019-01-31T14:00:04Z 7084 Solander \n",
"3 2018-10-25T04:32:03Z 7000 Solander \n",
"4 2019-02-05T21:43:20Z 7109 Cape Ferguson \n",
"\n",
" type \n",
"0 Feature \n",
"1 Feature \n",
"2 Feature \n",
"3 Feature \n",
"4 Feature "
]
},
"execution_count": 76,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from owslib.fes import PropertyIsGreaterThan\n",
"from owslib.wfs import WebFeatureService\n",
"import json\n",
"\n",
"wfs = WebFeatureService(url=GEOSERVER_WFS_LAYER, version='1.1.0')\n",
"geoserver_layer_name = layer1_wms_name\n",
"\n",
"# time filter\n",
"wfs_filter_time = \"2018-01-01T00:00:00\"\n",
"wfs_property_filter_time = 'time_coverage_start'\n",
"wfs_date_format=\"yyyy-MM-dd'T'HH:mm:ss\"\n",
"wfs_filter_slevelmax = PropertyIsGreaterThan(propertyname=wfs_property_filter_time,\n",
" literal=wfs_filter_time)\n",
"\n",
"# since the function feature doesn't seem to exist, have to create the query manually\n",
"filterxml_time = '<ogc:{property_filter_type} xmlns:ogc=\"http://www.opengis.net/ogc\"><ogc:PropertyName>{wfs_property_filter_time}</ogc:PropertyName>' \\\n",
" '<Function name=\"dateParse\"><Literal>{wfs_date_format}</Literal><ogc:Literal>{wfs_filter_time}</ogc:Literal></Function>' \\\n",
" '</ogc:{property_filter_type}>'.format(property_filter_type='PropertyIsGreaterThan',\n",
" wfs_property_filter_time=wfs_property_filter_time,\n",
" wfs_filter_time=wfs_filter_time,\n",
" wfs_date_format=wfs_date_format)\n",
"\n",
"response = wfs.getfeature(typename=geoserver_layer_name, filter=filterxml_time, outputFormat='application/json')\n",
"res = response.read()\n",
"json_output = json.dumps(json.loads(res))\n",
"\n",
"from pandas.io.json import json_normalize\n",
"data = json.loads(json_output)\n",
"df_soop_trv = json_normalize(data['features'])\n",
"\n",
"df_soop_trv.head()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## High level data filtering with Pandas\n",
"Using Pandas python package, we can quickly find the missions/vessel data we're interested in:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>geometry.coordinates</th>\n",
" <th>geometry.type</th>\n",
" <th>geometry_name</th>\n",
" <th>id</th>\n",
" <th>properties.CPHL_b</th>\n",
" <th>properties.PSAL_b</th>\n",
" <th>properties.TEMP_b</th>\n",
" <th>properties.TURB_b</th>\n",
" <th>properties.colour</th>\n",
" <th>properties.metadata_uuid</th>\n",
" <th>properties.platform_code</th>\n",
" <th>properties.time_coverage_end</th>\n",
" <th>properties.time_coverage_start</th>\n",
" <th>properties.trip_id</th>\n",
" <th>properties.vessel_name</th>\n",
" <th>type</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>[[145.2502, -15.4585], [145.2729, -15.4498], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>7E83B957-400D-3B41-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-01-30T14:57:30Z</td>\n",
" <td>2019-01-04T07:43:26Z</td>\n",
" <td>7087</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>[[141.3771, -10.7689], [141.2086, -10.8286], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>#0C6E0D</td>\n",
" <td>80B5076F-F3BA-2CAD-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-02-09T19:58:04Z</td>\n",
" <td>2019-01-31T14:00:04Z</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>[[130.8527, -12.4624], [130.8435, -12.4751], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>81D27786-97D1-2D88-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-02-22T07:50:45Z</td>\n",
" <td>2019-02-13T18:28:11Z</td>\n",
" <td>7085</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>[[130.8511, -12.4588], [130.8433, -12.4752], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>5add0977-ee50-4409-8f34-b547e9e27cd3</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-03-02T14:57:45Z</td>\n",
" <td>2019-02-26T07:33:30Z</td>\n",
" <td>20190226</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>[[122.2063, -18.0165], [122.1451, -17.9724], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>#0C6E0D</td>\n",
" <td>832511E6-9DDE-1E94-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-03-09T23:57:02Z</td>\n",
" <td>2019-03-04T06:47:14Z</td>\n",
" <td>7151</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>[[122.2211, -18.0049], [122.2058, -18.0159], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>8401EB97-759D-3854-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-03-19T01:49:46Z</td>\n",
" <td>2019-03-13T07:09:00Z</td>\n",
" <td>7083</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>[[121.0047, -15.9941], [121.0599, -15.8071], [...</td>\n",
" <td>LineString</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_map.fid--55653d83_169e73bc...</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>#0C6E0D</td>\n",
" <td>852FAC8B-393B-543B-E054-0010E056919A</td>\n",
" <td>VMQ9273</td>\n",
" <td>2019-04-03T21:57:15Z</td>\n",
" <td>2019-03-28T19:15:56Z</td>\n",
" <td>6997</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" geometry.coordinates geometry.type \\\n",
"5 [[145.2502, -15.4585], [145.2729, -15.4498], [... LineString \n",
"2 [[141.3771, -10.7689], [141.2086, -10.8286], [... LineString \n",
"6 [[130.8527, -12.4624], [130.8435, -12.4751], [... LineString \n",
"7 [[130.8511, -12.4588], [130.8433, -12.4752], [... LineString \n",
"9 [[122.2063, -18.0165], [122.1451, -17.9724], [... LineString \n",
"11 [[122.2211, -18.0049], [122.2058, -18.0159], [... LineString \n",
"13 [[121.0047, -15.9941], [121.0599, -15.8071], [... LineString \n",
"\n",
" geometry_name id \\\n",
"5 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"2 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"6 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"7 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"9 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"11 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"13 geom soop_trv_trajectory_map.fid--55653d83_169e73bc... \n",
"\n",
" properties.CPHL_b properties.PSAL_b properties.TEMP_b \\\n",
"5 True True False \n",
"2 True True True \n",
"6 False True True \n",
"7 False True True \n",
"9 True True True \n",
"11 True True False \n",
"13 True True True \n",
"\n",
" properties.TURB_b properties.colour properties.metadata_uuid \\\n",
"5 True #0C6E0D 7E83B957-400D-3B41-E054-0010E056919A \n",
"2 False #0C6E0D 80B5076F-F3BA-2CAD-E054-0010E056919A \n",
"6 True #0C6E0D 81D27786-97D1-2D88-E054-0010E056919A \n",
"7 True #0C6E0D 5add0977-ee50-4409-8f34-b547e9e27cd3 \n",
"9 False #0C6E0D 832511E6-9DDE-1E94-E054-0010E056919A \n",
"11 True #0C6E0D 8401EB97-759D-3854-E054-0010E056919A \n",
"13 True #0C6E0D 852FAC8B-393B-543B-E054-0010E056919A \n",
"\n",
" properties.platform_code properties.time_coverage_end \\\n",
"5 VMQ9273 2019-01-30T14:57:30Z \n",
"2 VMQ9273 2019-02-09T19:58:04Z \n",
"6 VMQ9273 2019-02-22T07:50:45Z \n",
"7 VMQ9273 2019-03-02T14:57:45Z \n",
"9 VMQ9273 2019-03-09T23:57:02Z \n",
"11 VMQ9273 2019-03-19T01:49:46Z \n",
"13 VMQ9273 2019-04-03T21:57:15Z \n",
"\n",
" properties.time_coverage_start properties.trip_id properties.vessel_name \\\n",
"5 2019-01-04T07:43:26Z 7087 Solander \n",
"2 2019-01-31T14:00:04Z 7084 Solander \n",
"6 2019-02-13T18:28:11Z 7085 Solander \n",
"7 2019-02-26T07:33:30Z 20190226 Solander \n",
"9 2019-03-04T06:47:14Z 7151 Solander \n",
"11 2019-03-13T07:09:00Z 7083 Solander \n",
"13 2019-03-28T19:15:56Z 6997 Solander \n",
"\n",
" type \n",
"5 Feature \n",
"2 Feature \n",
"6 Feature \n",
"7 Feature \n",
"9 Feature \n",
"11 Feature \n",
"13 Feature "
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"pd.to_datetime(df_soop_trv['properties.time_coverage_start']) # converting TIME values to date type\n",
"\n",
"df_soop_trv[(df_soop_trv['properties.time_coverage_start'] > '2019-01-01T00:00:00Z') &\n",
" (df_soop_trv['properties.vessel_name'] == 'Solander')].sort_values(by=['properties.time_coverage_start'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lets say we want to retrieve data for the **trip_id** 7084 data (between 04/01/2019 - 30/01/2019)\n",
"\n",
"For this, we need to query the **WFS** layer using the information we have just found in the **WMS**\n",
"\n",
"# The WFS layer\n",
"\n",
"The WFS layer contains the actual data values most people would be interested in (temperature, turbidity, salinity ..).\n",
"\n",
"In the following example, we retrieve data for only one trip_id"
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Index([u'FID', u'trip_id', u'vessel_name', u'TIME', u'LATITUDE', u'LONGITUDE',\n",
" u'TURB', u'TEMP', u'PSAL', u'CPHL', u'TURB_b', u'TEMP_b', u'PSAL_b',\n",
" u'CPHL_b', u'geom'],\n",
" dtype='object')\n"
]
}
],
"source": [
"wfs = WebFeatureService(url=GEOSERVER_WFS_LAYER, version='1.1.0', timeout=30)\n",
"trv_nrt = wfs[layer1_wms_name]\n",
"\n",
"response = wfs.getfeature(typename=layer1_wfs_name, outputFormat='csv', maxfeatures=1)\n",
"res = response.read()\n",
"\n",
"import pandas as pd\n",
"import io\n",
"df_trv = pd.read_csv((io.BytesIO(res)), encoding='utf8')\n",
"\n",
"wfs_columns = df_trv.columns\n",
"print wfs_columns"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>geometry.coordinates</th>\n",
" <th>geometry.type</th>\n",
" <th>geometry_name</th>\n",
" <th>id</th>\n",
" <th>properties.CPHL</th>\n",
" <th>properties.CPHL_b</th>\n",
" <th>properties.LATITUDE</th>\n",
" <th>properties.LONGITUDE</th>\n",
" <th>properties.PSAL</th>\n",
" <th>properties.PSAL_b</th>\n",
" <th>properties.TEMP</th>\n",
" <th>properties.TEMP_b</th>\n",
" <th>properties.TIME</th>\n",
" <th>properties.TURB</th>\n",
" <th>properties.TURB_b</th>\n",
" <th>properties.trip_id</th>\n",
" <th>properties.vessel_name</th>\n",
" <th>type</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>[141.3771, -10.7689]</td>\n",
" <td>Point</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_data.fid--55653d83_169e759...</td>\n",
" <td>1.1260</td>\n",
" <td>True</td>\n",
" <td>-10.76890</td>\n",
" <td>141.37714</td>\n",
" <td>33.2151</td>\n",
" <td>True</td>\n",
" <td>28.8713</td>\n",
" <td>True</td>\n",
" <td>2019-01-31T14:00:04Z</td>\n",
" <td>None</td>\n",
" <td>False</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>[141.3768, -10.769]</td>\n",
" <td>Point</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_data.fid--55653d83_169e759...</td>\n",
" <td>1.0894</td>\n",
" <td>True</td>\n",
" <td>-10.76900</td>\n",
" <td>141.37680</td>\n",
" <td>33.2144</td>\n",
" <td>True</td>\n",
" <td>29.0074</td>\n",
" <td>True</td>\n",
" <td>2019-01-31T14:00:13Z</td>\n",
" <td>None</td>\n",
" <td>False</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>[141.3763, -10.7691]</td>\n",
" <td>Point</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_data.fid--55653d83_169e759...</td>\n",
" <td>1.1016</td>\n",
" <td>True</td>\n",
" <td>-10.76910</td>\n",
" <td>141.37632</td>\n",
" <td>33.2159</td>\n",
" <td>True</td>\n",
" <td>28.8688</td>\n",
" <td>True</td>\n",
" <td>2019-01-31T14:00:23Z</td>\n",
" <td>None</td>\n",
" <td>False</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>[141.3759, -10.7692]</td>\n",
" <td>Point</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_data.fid--55653d83_169e759...</td>\n",
" <td>1.0894</td>\n",
" <td>True</td>\n",
" <td>-10.76922</td>\n",
" <td>141.37586</td>\n",
" <td>33.2186</td>\n",
" <td>True</td>\n",
" <td>28.9564</td>\n",
" <td>True</td>\n",
" <td>2019-01-31T14:00:34Z</td>\n",
" <td>None</td>\n",
" <td>False</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>[141.3754, -10.7693]</td>\n",
" <td>Point</td>\n",
" <td>geom</td>\n",
" <td>soop_trv_trajectory_data.fid--55653d83_169e759...</td>\n",
" <td>1.0894</td>\n",
" <td>True</td>\n",
" <td>-10.76934</td>\n",
" <td>141.37544</td>\n",
" <td>33.2268</td>\n",
" <td>True</td>\n",
" <td>28.9836</td>\n",
" <td>True</td>\n",
" <td>2019-01-31T14:00:44Z</td>\n",
" <td>None</td>\n",
" <td>False</td>\n",
" <td>7084</td>\n",
" <td>Solander</td>\n",
" <td>Feature</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" geometry.coordinates geometry.type geometry_name \\\n",
"0 [141.3771, -10.7689] Point geom \n",
"1 [141.3768, -10.769] Point geom \n",
"2 [141.3763, -10.7691] Point geom \n",
"3 [141.3759, -10.7692] Point geom \n",
"4 [141.3754, -10.7693] Point geom \n",
"\n",
" id properties.CPHL \\\n",
"0 soop_trv_trajectory_data.fid--55653d83_169e759... 1.1260 \n",
"1 soop_trv_trajectory_data.fid--55653d83_169e759... 1.0894 \n",
"2 soop_trv_trajectory_data.fid--55653d83_169e759... 1.1016 \n",
"3 soop_trv_trajectory_data.fid--55653d83_169e759... 1.0894 \n",
"4 soop_trv_trajectory_data.fid--55653d83_169e759... 1.0894 \n",
"\n",
" properties.CPHL_b properties.LATITUDE properties.LONGITUDE \\\n",
"0 True -10.76890 141.37714 \n",
"1 True -10.76900 141.37680 \n",
"2 True -10.76910 141.37632 \n",
"3 True -10.76922 141.37586 \n",
"4 True -10.76934 141.37544 \n",
"\n",
" properties.PSAL properties.PSAL_b properties.TEMP properties.TEMP_b \\\n",
"0 33.2151 True 28.8713 True \n",
"1 33.2144 True 29.0074 True \n",
"2 33.2159 True 28.8688 True \n",
"3 33.2186 True 28.9564 True \n",
"4 33.2268 True 28.9836 True \n",
"\n",
" properties.TIME properties.TURB properties.TURB_b \\\n",
"0 2019-01-31T14:00:04Z None False \n",
"1 2019-01-31T14:00:13Z None False \n",
"2 2019-01-31T14:00:23Z None False \n",
"3 2019-01-31T14:00:34Z None False \n",
"4 2019-01-31T14:00:44Z None False \n",
"\n",
" properties.trip_id properties.vessel_name type \n",
"0 7084 Solander Feature \n",
"1 7084 Solander Feature \n",
"2 7084 Solander Feature \n",
"3 7084 Solander Feature \n",
"4 7084 Solander Feature "
]
},
"execution_count": 78,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from owslib.fes import PropertyIsGreaterThan\n",
"from owslib.wfs import WebFeatureService\n",
"import json\n",
"\n",
"wfs = WebFeatureService(url=GEOSERVER_WFS_LAYER, version='1.1.0')\n",
"geoserver_layer_name = layer1_wfs_name # wfs layer\n",
"\n",
"## string property\n",
"filter_1_filter_property = 'trip_id' \n",
"filter_1_filter_value = '7084'\n",
"filter_1 = PropertyIsEqualTo(propertyname=filter_1_filter_property,\n",
" literal=filter_1_filter_value)\n",
"\n",
"# add both filters with AND operator and convert to XML\n",
"filters_xml = etree.tostring(filter_1.toXML()).decode(\"utf-8\")\n",
"\n",
"response = wfs.getfeature(typename=geoserver_layer_name, filter=filters_xml, outputFormat='application/json')\n",
"#response = wfs.getfeature(typename=geoserver_layer_name, filter=filters_xml, outputFormat='csv')\n",
"\n",
"res = response.read()\n",
"json_output = json.dumps(json.loads(res))\n",
"\n",
"from pandas.io.json import json_normalize\n",
"data = json.loads(json_output)\n",
"df_soop_trv = json_normalize(data['features'])\n",
"\n",
"pd.to_datetime(df_soop_trv['properties.TIME']) # converting TIME values to date type\n",
"\n",
"df_soop_trv.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data Visualisation"
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x504 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from mpl_toolkits.basemap import Basemap\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"degree_delta = 2\n",
"lats = df_soop_trv['properties.LATITUDE']\n",
"lons = df_soop_trv['properties.LONGITUDE']\n",
"\n",
"fig, ax = plt.subplots(figsize=(12,7))\n",
"# Define the projection, scale, the corners of the map, and the resolution.\n",
"\n",
"m = Basemap(projection='merc',llcrnrlat=lats.min() - degree_delta,urcrnrlat=lats.max() + degree_delta,\\\n",
" llcrnrlon=lons.min() - degree_delta,urcrnrlon=lons.max() + degree_delta,lat_ts=10,resolution='i')\n",
"\n",
"m.drawcoastlines()\n",
"parallels = np.arange(lats.min() - degree_delta, lats.max() + degree_delta,(lats.max() - lats.min())/2.)\n",
"m.drawparallels(parallels, labels=[1,0,0,0])\n",
"\n",
"meridians = np.arange(lons.min() - degree_delta, lats.max() + degree_delta, 1.)\n",
"m.drawmeridians(meridians,labels=[True,True,False,True])\n",
"\n",
"x, y = m(np.array(lons), np.array(lats))\n",
"m.plot(x, y)\n",
"ax.set_title('SOOP TRV')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5,0,'Time')"
]
},
"execution_count": 85,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x504 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Plot Temperature profile\n",
"fig, ax = plt.subplots(figsize=(15,7))\n",
"\n",
"for label, df_sub in df_soop_trv.groupby('properties.trip_id'):\n",
" df_sub.plot(x='properties.TIME',\n",
" y='properties.TEMP', \n",
" title='SOOP TRV',\n",
" linestyle='dashed', ax=ax, label=label)\n",
"\n",
"ax.set_ylabel('Temperature (Deg)')\n",
"ax.set_xlabel('Time')"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0,0.5,'Temperature / Deg')"
]
},
"execution_count": 88,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x504 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# TS diagram \n",
"fig2, ax2 = plt.subplots(figsize=(15,7))\n",
"df_soop_trv.plot.scatter(x='properties.PSAL', \n",
" y='properties.TEMP', \n",
" c='properties.LONGITUDE',\n",
" title='Temperature Salinity Diagram of Vessel {vessel} on trip {trip_id} '.\n",
" format(trip_id=df_soop_trv['properties.trip_id'][0],\n",
" vessel=df_soop_trv['properties.vessel_name'][0]),\n",
" marker='+', linestyle=\"None\", ax=ax2,\n",
" cmap='RdYlBu_r')\n",
"\n",
"\n",
"ax2.set_xlabel('Salinity / PSU')\n",
"ax2.set_ylabel('Temperature / Deg')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.12"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment