Recentemente, temos cooperado com um número bastante maior de EPAs (agências de proteção ambiental) em todo o mundo. Entre todos os pedidos que recebemos, trata-se, na verdade, de fornecer um serviço de mapas da Web para que a própria EPA possa incluir os dados da qualidade do ar em tempo real no mapa do seu site.
Uma das vantagens óbvias de usar esse serviço web de mapas é beneficiar-se dos dados transfronteiriços que estamos curando, ou seja, uma informação mundial sobre a qualidade do ar é fornecida sem limites de fronteiras do país.
A segunda vantagem não é apenas o facto de se tratar de um serviço gratuito, mas também de ser totalmente compatível com as tecnologias de mapas padrão do google, bing ou leaflet, o que permite uma integração rápida e fácil com qualquer site existente.
--
Ponto final do serviço de mapa de blocos
O servidor do mapa de blocos está disponível no URL `https://tiles.aqicn.org/tiles/{aqi}/{z}/{x}/{y}.png`, onde aqi
se refere ao tipo de marcador a ser usado. ser plotado, que pode ser:
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).
Abaixo está o exemplo dos 6 poluentes individuais para o Sul da China.
Condições de utilização do serviço Web
O serviço web de mapas é fornecido gratuitamente, sujeito a limites de uso razoáveis e política de uso aceitável. Atualmente, os blocos são atualizados a cada 15 minutos (e até 1 hora em caso de tráfego intenso).
Observe que a capacidade do nosso servidor é limitada, por isso nos reservamos o direito de pausar o serviço a qualquer momento, por exemplo, para realizar a manutenção do servidor. Se necessita de uma integração mais estável, contacte-nos para encontrarmos uma solução adequada, como a configuração de um servidor dedicado.
Por último, você também precisa especificar seu próprio ID de token como um argumento extra para o endpoint do serviço de bloco, como `token=_TOKEN_ID_` no seguinte URL: `https://tiles.aqicn.org/tiles/{aqi}/{z }/{x}/{y}.png? token=_TOKEN_ID_ `.
Você pode solicitar seu próprio ID de token nesta página . Você só precisa fornecer um e-mail válido e poderá obter seu próprio token em um minuto.
Restrições de uso de serviços da Web
Ao utilizar o serviço, não se esqueça de fornecer a atribuição ao projeto do Índice Mundial de Qualidade do Ar , bem como à EPA que fornece os dados (se você usar o serviço de mapas para mostrar dados de um local ou fonte específica). Você pode obter a lista completa de todos os EPA neste link .
Na verdade, não aja como o World Resource Institute (WRI): eles estavam descartando todo o nosso feed de dados e republicando os dados em seu próprio site de projeto sem dar qualquer atribuição única ao nosso trabalho... Isso não está bem quando você sabe que eles recebem financiamento de até 80 milhões de dólares por ano. Não acredite em nós? Verifique este instantâneo .
Extensões futuras
Já estamos trabalhando na extensão deste serviço web para fornecer mais configurações. Por exemplo:
- Para apoiar mais padrões além da EPA dos EUA, como `eucaqi- xxx ` para o Índice Comum Europeu de Qualidade do Ar , `innaqi- xxx ` para o Índice Nacional de Qualidade do Ar da Índia , `raw- xxx ` para os dados brutos não convertidos, etc.
- Mais indicadores como o
wind
(tanto para a velocidade atual do vento quanto para a direção do vento), bem como o índiceventilation
previsto [1] , que pode ser extremamente útil para previsões. - Suporte para estimativa de superfície geoestatística
kriging
- ou seja, interpolações tipo mapa de calor (imagem à direita) que podem ser úteis para redes de monitoramento de densidade mais baixa. - Suporte para média de dados
24 hours
e8 hours
. Nosso mapa atualmente é baseado na média de 1 hora, mas períodos de média mais longos são úteis para estudos epidemiológicos. - Suporte para renderização de blocos baseada em
GeoJSON
, permitindo a customização de marcadores e escala de cores, bem como uma melhor integração com ferramentas como tuftjs.org .
Observe que para suportar mais padrões AQI e configurações de blocos, precisamos aumentar a capacidade do nosso servidor (poder de processamento e armazenamento), para o qual precisaremos de patrocínio. Se você trabalha para uma grande empresa de nuvem, ou por exemplo, Google ou Microsoft e está lendo esta mensagem, então por que não considerar tornar sua empresa ecologicamente correta ( combater a poluição do ar promovendo a conscientização dos cidadãos ) e patrocinar parte do servidor necessário capacidade extra? Isso não só nos ajudaria, mas também ajudaria toda a comunidade de investigadores, cientistas, estatísticos e epidemiologistas que trabalham com dados e ciências ambientais.
--
Código de exemplo: Integração com Leaflet
Leaflet é uma biblioteca JavaScript de código aberto extremamente interessante e leve para mapas interativos compatíveis com dispositivos móveis, criada por Vladimir Agafonkin do 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>
Código de exemplo: Integração com Google
Os mapas do Google são bastante convenientes e liberam até 25.000 chamadas de API por dia. Observe que o Google Maps está disponível na China, mas o script da API de mapas precisa ser carregado em google.cn (`http://maps.google.cn/maps/api/js`) em vez do https://maps normal URL .googleapis.com/maps/api/js.
<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>
Código de exemplo: Integração com Microsoft Bing Maps
Os mapas do Bing são realmente muito legais e também usam o mapa base Here para alguns países. Ainda existem muitos sites baseados no Microsoft Maps (e especialmente no domínio da qualidade do ar e do clima).
<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>