Ostatnio współpracujemy z kilkoma kolejnymi agencjami ochrony środowiska (EPA) na całym świecie. Wśród wszystkich próśb, jakie otrzymaliśmy, w rzeczywistości chodziło o udostępnienie usługi map internetowych, aby sama EPA mogła umieszczać na mapie aktualne dane dotyczące jakości powietrza ze swojej strony internetowej.
Jedną z oczywistych zalet korzystania z naszego serwisu internetowego z mapami jest możliwość korzystania z danych transgranicznych, którymi zarządzamy, tj. ogólnoświatowych informacji o jakości powietrza, bez ograniczeń krajowych.
Drugą zaletą jest nie tylko to, że jest to usługa bezpłatna, ale także w pełni kompatybilna ze standardowymi technologiami mapowymi od Google, Bing czy Leaflet, co pozwala na szybką i łatwą integrację z dowolną istniejącą stroną internetową.
--
Punkt końcowy usługi mapy kafelków
Serwer mapy kafelków jest dostępny pod adresem URL `https://tiles.aqicn.org/tiles/{aqi}/{z}/{x}/{y}.png`, gdzie aqi
oznacza typ znacznika zostać wykreślone, co może być:
usepa-aqi
: Plots markers based on the composite AQI calculated with the US EPA standard.usepa-pm25
: PM2.5 based AQI - if a station does not have PM2.5 reading, then it is not plotted.usepa-10
: Same as above, but for PM10.usepa-o3
: Same as above, but for Ozone (based on the 1 hour breakpoints).usepa-no2
: Same as above, but for Nitrogen Dioxide.usepa-so2
: Same as above, but for Sulfur Dioxide.usepa-co
: Same as above, but for Carbon Monoxide.asean-pm10
: Asean PM10 raw PM10 concentration (explanations).
Poniżej znajduje się przykład 6 poszczególnych substancji zanieczyszczających dla południowych Chin.
Warunki korzystania z Usługi internetowej
Usługa internetowa z mapami jest świadczona bezpłatnie, pod warunkiem rozsądnych ograniczeń użytkowania i akceptowalnych zasad użytkowania. Kafelki są obecnie odświeżane co 15 minut (a w przypadku dużego ruchu do 1 godziny).
Należy pamiętać, że pojemność naszego serwera jest ograniczona, dlatego zastrzegamy sobie prawo do wstrzymania świadczenia usługi w dowolnym momencie, na przykład w celu konserwacji serwera. Jeśli potrzebujesz bardziej stabilnej integracji, skontaktuj się z nami, aby znaleźć odpowiednie rozwiązanie, np. konfigurację serwera dedykowanego.
Na koniec musisz także określić własny identyfikator tokena jako dodatkowy argument punktu końcowego usługi kafelków, na przykład `token=_TOKEN_ID_` w następującym adresie URL: `https://tiles.aqicn.org/tiles/{aqi}/{z }/{x}/{y}.png? token=_TOKEN_ID_ `.
Na tej stronie możesz poprosić o własny identyfikator tokena. Wystarczy podać prawidłowy adres e-mail, a w ciągu minuty możesz otrzymać własny token.
Ograniczenia w korzystaniu z usług sieciowych
Korzystając z usługi, nie zapomnij podać przynależności do projektu Światowego Indeksu Jakości Powietrza oraz Agencji Ochrony Środowiska dostarczającej dane (jeśli korzystasz z usługi mapowej w celu pokazania danych z określonej lokalizacji lub źródła). Pełną listę wszystkich umów EPA można znaleźć pod tym linkiem .
Prawdę mówiąc, nie zachowujcie się jak Światowy Instytut Zasobów (WRI): usuwał cały nasz plik danych i ponownie publikował dane na stronie internetowej własnego projektu, nie podając ani jednego źródła naszej pracy... To nie jest całkiem w porządku kiedy wiesz, że dostają do 80 milionów dolarów rocznie. Nie wierzysz nam? Sprawdź tę migawkę .
Przyszłe rozszerzenia
Już pracujemy nad rozszerzeniem tej usługi internetowej, aby zapewnić więcej konfiguracji. Na przykład:
- W celu wsparcia większej liczby norm innych niż amerykańska EPA, takich jak „eucaqi- xxx ” dla wspólnego europejskiego wskaźnika jakości powietrza , „innaqi- xxx ” dla indyjskiego krajowego wskaźnika jakości powietrza , „raw- xxx ” dla nieprzekonwertowanych danych surowych, itp.
- Więcej wskaźników, takich jak
wind
(zarówno dla aktualnej prędkości, jak i kierunku wiatru), a także prognozowany wskaźnikventilation
[1] , który może być niezwykle przydatny w prognozowaniu. - Wsparcie dla geostatystycznego szacowania powierzchni
kriging
- tj. interpolacje typu mapy cieplnej (obrazek po prawej), które mogą być przydatne w przypadku sieci monitorujących o mniejszej gęstości. - Obsługa uśredniania danych
24 hours
i8 hours
. Nasze mapy są obecnie oparte na uśrednianiu 1-godzinnym, ale dłuższe okresy uśredniania są przydatne w badaniach epidemiologicznych. - Obsługa renderowania kafelków w oparciu o
GeoJSON
, umożliwiająca dostosowywanie znaczników i skali kolorów, a także lepszą integrację z narzędziami takimi jak tuftjs.org .
Należy pamiętać, że aby obsługiwać więcej standardów AQI i konfiguracji płytek, musimy zwiększyć pojemność naszego serwera (zarówno moc obliczeniową, jak i pamięć masową), co będzie wymagało sponsorowania. Jeśli pracujesz dla jednej z dużych firm działających w chmurze, na przykład Google lub Microsoft i czytasz tę wiadomość, dlaczego nie rozważyć uczynienia swojej firmy przyjazną dla środowiska ( walka z zanieczyszczeniem powietrza poprzez promowanie świadomości obywatelskiej ) i sponsorowania części potrzebnego serwera dodatkowa pojemność? Pomogłoby to nie tylko nam, ale także całej społeczności badaczy, naukowców, statystyków i epidemiologów pracujących z danymi i naukami środowiskowymi.
--
Przykładowy kod: Integracja z Leafletem
Leaflet to niezwykle fajna, lekka biblioteka JavaScript typu open source do interaktywnych map przyjaznych dla urządzeń mobilnych, stworzona przez Vladimira Agafonkina z MapBox.
<div id='map' style='height:380px;' />
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.5/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet-0.7.5/leaflet.js"></script>
<script>
var OSM_URL = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
var OSM_ATTRIB = '© <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors';
var osmLayer = L.tileLayer(OSM_URL, { attribution: OSM_ATTRIB });
var WAQI_URL = "https://tiles.waqi.info/tiles/usepa-aqi/{z}/{x}/{y}.png?token=_TOKEN_ID_";
var WAQI_ATTR = 'Air Quality Tiles © <a href="http://waqi.info">waqi.info</a>';
var waqiLayer = L.tileLayer(WAQI_URL, { attribution: WAQI_ATTR });
var map = L.map('map').setView([51.505, -0.09], 11);
map.addLayer(osmLayer).addLayer(waqiLayer);
</script>
Przykładowy kod: Integracja z Google
Mapy Google są dość wygodne i bezpłatne do 25 000 wywołań API dziennie. Należy pamiętać, że Mapy Google są dostępne w Chinach, ale skrypt API map należy załadować z google.cn (`http://maps.google.cn/maps/api/js`) zamiast zwykłego https://maps .googleapis.com/maps/api/js adres URL.
<div id='map' style='height:380px;' />
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script>
var map = new google.maps.Map(document.getElementById('map'), {
center: new google.maps.LatLng(51.505, -0.09),
mapTypeId: google.maps.MapTypeId.ROADMAP,
zoom: 11
});
var t = new Date().getTime();
var waqiMapOverlay = new google.maps.ImageMapType({
getTileUrl: function (coord, zoom) {
return 'https://tiles.aqicn.org/tiles/usepa-aqi/' + zoom + "/" + coord.x + "/" + coord.y + ".png?token=_TOKEN_ID_";
},
name: "Air Quality",
});
map.overlayMapTypes.insertAt(0, waqiMapOverlay);
</script>
Przykładowy kod: Integracja z Microsoft Bing Maps
Mapy Bing są całkiem fajne, a dla niektórych krajów korzystają także z mapy bazowej Here. Wciąż istnieje sporo stron internetowych bazujących na Microsoft Maps (zwłaszcza w dziedzinie jakości powietrza i pogody).
<div id='map' style='height:380px;' style='position:relative;'/>
<script type='text/javascript' src='https://www.bing.com/api/maps/mapcontrol?callback=initBingMap' async defer></script>
<script>
function initBingMap() {
var map = new Microsoft.Maps.Map(document.getElementById('map'), {
center: new Microsoft.Maps.Location(51.505, -0.09),
zoom: 11,
});
var options = {
uriConstructor: "https://tiles.aqicn.org/tiles/usepa-aqi//{zoom}/{x}/{y}.png?token=_TOKEN_ID_",
minZoom: 1,
maxZoom: 15
};
var waqiTileSource = new Microsoft.Maps.TileSource(options);
var waqiTilelayer = new Microsoft.Maps.TileLayer({ mercator: waqiTileSource });
map.layers.insert(waqiTilelayer);
}
</script>