Quem somos
|
Onde estamos
|
Conselho científico
|
Recrutamento
|
Formação
@
IPMA
|
Investigação
|
e
Biblioteca
|
Enciclopédia
|
Contacto
|
EN
Tempo
Previsão significativa
Previsão 10 dias e horária
Previsão descritiva
Avisos Meteorológicos
Cartas meteorológicas
Perfis verticais
Imagens satélite
Imagens radar
Descargas elétricas
Estações Online
Radiação Solar
Previsão no mundo
Previsão período alargado
Previsão sazonal
Previsão ciclones tropicais
Testemunhou um fenómeno meteorológico?
Mar
Praias e Portos
Previsão para navegação
Previsão altura significativa
Previsão período de pico
Previsão de corrente
Previsão de temperatura
Previsão da elevação
Sismos
Atividade sísmica
Shakemap
Sentiu um sismo?
Comunicados
Tensor Momento Sísmico
Escalas sísmicas
Rede sísmica
Medidas em caso sismo
Projetos
Boletins
Clima
Acompanhamento do clima
Extremos climatológicos
Normais climatológicas
Séries longas
Monitorização diária
Monitorização mensal
Monitorização da Seca
Ondas de Calor
Boletins climatológicos
Gases com efeito estufa
Portal do Clima
Serviços de Clima
Bivalves
Bivalves - ponto situação
Zonas de Produção
Documentos e Legislação
Biotoxinas
Fitoplâncton Nocivo
Metais Contaminantes
Microbiologia
Histórico interdições
Pescas e aquacultura
Recursos Vivos
Estação Piscicultura de Olhão
Estação Moluscicultura de Tavira
Estação Oceanográfica Cascais
Projectos
Divulgação
Espaço Aquicultura
ICES
Aeronáutica
Mensagens TAF e METAR
Self Briefing
Saber mais, aeronáutica.
Agricultura
Percentagem água solo
Vegetation Health Index (VHI)
Fração radiação absorvida (FAPAR)
Boletins agrometeo
Mais informação
Plataforma agroclimática
Saúde
Índice ultravioleta
Ozono
Pólens
Temperatura do ar
Navios
Enquadramento
NI Mário Ruivo
NI Diplodus
Maris
Recife II
Cardium
Espaço
Satélite MSG
Imagens do sol
Fogos Rurais
Perigo de Incêndio Continente
Perigo de Incêndio Madeira
FWI e Probabilidade de Extremos
Relatórios Perigo de Incêndio
IPMA
>
O Clima
>
Normais climatológicas
>
1971-2000
Normais Climatológicas
Introdução
1971-2000
1981-2010
Fichas Climatológicas
Fichas Climatológicas 1971-2000
Fichas Climatológicas 1981-2010
Mapa dinâmico - Normais Climatológicas Anuais
Estações
Açores
Madeira
Continente
Sobre as Normais
Normais Climatológicas
Normais Climatológicas - 1971-2000
Selecione estações a partir do mapa
Número / Estação:
/
Tipo:
Localização:
Inicio funcionamento:
Notas:
"; _menu.innerHTML = _btns; } //add Legend if (sidebarLegend != null) { var _legend = L.DomUtil.create('div', 'legend', this._div); _legend.innerHTML = '
Legenda
' + sidebarLegend + '
'; } return this._div; }; String.prototype.lpad = function(padString, length) { var str = this; while (str.length =30ºC (MNDTX30)", "type": "column", "lineColor": nd_temp_colors[0], "fillAlphas": 0.9, "valueField": "MNDTX30", "balloonText": "[[value]]", "balloon": { "fillColor": nd_temp_colors[0], "color": "#fff", } }, { "id": "g2", "title": "Temp. Máxima" + ">=25ºC (MNDTX25)", "type": "column", "lineColor": nd_temp_colors[1], "fillAlphas": 0.9, "valueField": "MNDTX25", "balloonText": "[[value]]", "balloon": { "fillColor": nd_temp_colors[1], "color": "#fff", } }, { "id": "g3", "title": "Temp. Mínima" + ">=20ºC (MNDTN20)", "type": "column", "lineColor": nd_temp_colors[2], "fillAlphas": 0.9, "valueField": "MNDTN20", "balloonText": "[[value]]", "balloon": { "fillColor": nd_temp_colors[2], "color": "#fff", } }, { "id": "g4", "title": "Temp. Mínima" + "=0.1mm (MNDRR01)", "type": "column", "lineColor": nd_prec_colors[0], "fillAlphas": 0.9, "valueField": "MNDRR01", "balloonText": "[[value]]", "balloon": { "fillColor": nd_prec_colors[0], "color": "#fff", } }, { "id": "g2", "title": "Prec. Diária" + ">=1mm (MNDRR1)", "type": "column", "lineColor": nd_prec_colors[1], "fillAlphas": 0.9, "valueField": "MNDRR1", "balloonText": "[[value]]", "balloon": { "fillColor": nd_prec_colors[1], "color": "#fff", } }, { "id": "g3", "title": "Prec. Diária" + ">=10mm (MNDRR10)", "type": "column", "lineColor": nd_prec_colors[2], "fillAlphas": 0.9, "valueField": "MNDRR10", "balloonText": "[[value]]", "balloon": { "fillColor": nd_prec_colors[2], "color": "#fff", } }], "chartCursor": { "fullWidth": true, "cursorAlpha": 0.2 }, "categoryField": "month", "categoryAxis": { "parseDates": false, "dashLength": 1, "gridThickness": 0, "minorGridEnabled": false }, "export": { "enabled": true, "menu": exportmenu, "beforeCapture": function(menuConfig) { addlogo(this.setup); } } }); function addlogo(setup) { var url = 'data:image/png;base64,' + logoIpma_base64; var timer = setInterval(function() { if (setup.fabric) { var canvas = setup.fabric; clearTimeout(timer); canvas.setOverlayImage(url, canvas.renderAll.bind(canvas), { scaleX: 0.3, scaleY: 0.3, left: 5, top: 5, originX: 'left', originY: 'top', }); } }, 100); } function get_type(text) { if (text.toLowerCase() == "climatológica") { return "Climatológica"; } else if (text.toLowerCase() == "sinóptica") { return "Sinóptica"; } else { return ""; } } function get_note(text) { if (text == "*") { return "Utilizada para representar capital de distrito por abranger o maior período de dados"; } else if (text == "**") { return "Valores normais obtidos por combinação de dados de estações próximas"; } else { return text; } } function toDegreesMinutesAndSeconds(coordinate) { var absolute = Math.abs(coordinate); var degrees = Math.floor(absolute); var minutesNotTruncated = (absolute - degrees) * 60; var minutes = Math.floor(minutesNotTruncated); var seconds = Math.floor((minutesNotTruncated - minutes) * 60); return degrees + "º" + minutes + "'"; // + seconds; } function convertDMS(lat, lng) { var latitude = toDegreesMinutesAndSeconds(lat); var latitudeCardinal = lat >= 0 ? "N" : "S"; var longitude = toDegreesMinutesAndSeconds(lng); var longitudeCardinal = lng >= 0 ? "E" : "W"; return latitude + latitudeCardinal + "; " + longitude + " " + longitudeCardinal; } function capitalize(text) { // Format category label string return text.charAt(0) + text.slice(1).toLowerCase(); } function fill_month(month, parameter, pvalue) { // Find in station_chart_data array the dictionary with a specific month // and add parameter and pvalue to that dictionary $(station_chart_data).each(function(index, value){ if (value.month == month) { station_chart_data[index][parameter] = pvalue; } }); } function is_month_par(label) { for (var i=0; i
= 0) { return true; } } return false; } function switch_div(div) { if (!$("." + div).is(":visible")) { $('.par_div').hide(); $("." + div).show(); } } function processStation(station) { // Get current station data station_data = null; for (var i=0; i
' }), title: name} ); selMarker.addTo(map_conf); // Change station info $("#stat_name").text(name); $("#stat_type").text(get_type(station_data["TIPO"])); $("#stat_num").text(station_data["NUM"]); $("#stat_coords").text(convertDMS(lat, lon) + "; Alt. " + station_data["ALT"] + "m"); $("#stat_func").text(station_data["INICIO"]); $("#stat_note").text(get_note(station_data["NOTA"])); // Add link to pdf if exists $("#pdfLink").empty(); var pdf = getPdf(station_data["NUM"]); if (pdf) { var link = $('
').attr({'href': "https://www.ipma.pt/opencms/bin/file.data/climate-normal/" + pdf, 'target': "_blank"}).text('Ficha'); var img = '
'; $("#pdfLink").append(link, img); } // Reset charts titles chart_t_1.titles[1].text = station_data["NOME"]; chart_t_2.titles[1].text = station_data["NOME"]; chart_p_1.titles[1].text = station_data["NOME"]; chart_p_2.titles[1].text = station_data["NOME"]; // Reset charts data chart_t_1.dataProvider = station_chart_data; chart_t_2.dataProvider = station_chart_data; chart_p_1.dataProvider = station_chart_data; chart_p_2.dataProvider = station_chart_data; // Redraw charts chart_t_1.validateData(); chart_t_2.validateData(); chart_p_1.validateData(); chart_p_2.validateData(); } function showChartfromMarker(e) { updateStation(this[0]); } function getPdf(NUM) { for (var i=0; i
li > a').each(function (elem) { // Deselect all regions menu items var attr = $(this).attr('data-position'); if (typeof attr !== typeof undefined && attr !== false) this.className = "none"; }); //focus to current menu item $(this)[0].className = "none focus"; // Do action var pos = $(this)[0].getAttribute('data-position'); var zoom = $(this)[0].getAttribute('data-zoom'); if (pos && zoom) { var locat = pos.split(','); var zoom = parseFloat(zoom); map_conf.setView(locat, zoom, {animation: true}); } } }); //*** Sidebar Buttons events $("#menu a").on('click', function(data) { var idx = data.currentTarget.attributes.id.value.replace('button_',''); // Remove all layers removeLayers(); // Add current layer if (Params[idx]["service"] !== undefined) { for (var j=0; j
= 0) { var lat = station_obj["LAT"]; var lon = station_obj["LON"]; var stat_name = station_obj["NOME"]; // Create marker var marker = new L.marker( [lat, lon], { icon : L.divIcon({ className : 'circle', iconSize : [ 20, 20 ], html: '
' }), title: stat_name} ); // Add action to marker marker.on('click', showChartfromMarker, [stat_id]); // Add to Stations layer Group stats_layer.addLayer(marker); } } // Hide loading icon on document ready var everythingLoaded = setInterval(function() { if (/loaded|complete/.test(document.readyState)) { // Load mapservices asyncronously to speed up charts render for (var i=0; i
Lisboa:
UTC:
Copyright ©
Instituto Português do Mar e da Atmosfera
2025