Séries temporaisTime series21 out. 2026Oct 21, 202610 min de leitura, com figuras interativas10 min read, with interactive figures

Ponteiros de relógio e rios: como wavelets mostram quando populações andam juntasClock hands and rivers: how wavelets reveal when populations move together

Deslize uma onda, leia o ponteiro e compare relógios. Tudo aqui roda no seu navegador, com populações que você mesmo cria.Slide a wave, read the clock hand and compare clocks. Everything here runs in your browser, on populations you build yourself.

Sincronia não é um número sóSynchrony is not one number

Quando populações de peixes em lugares diferentes sobem e descem juntas, os ecólogos chamam isso de sincronia. Ela importa porque populações sincrônicas podem desabar todas ao mesmo tempo, sem um refúgio por perto de onde os peixes possam voltar.

When fish populations in different places rise and fall together, ecologists call it synchrony. It matters because synchronous populations can crash everywhere at once, with no nearby refuge left to recolonise from.

Em geral, medimos a sincronia como uma correlação entre lugares. Mas as populações oscilam em vários ritmos ao mesmo tempo: o ciclo anual da cheia, oscilações lentas de vários anos e muito ruído. Dois lugares podem estar em fase no ciclo anual e fora de fase no ciclo lento. E a sincronia pode ligar e desligar ao longo dos anos. Um único número apaga tudo isso.

Synchrony is usually measured as one correlation between places. But populations fluctuate on many rhythms at once: a yearly flood cycle, slower swings over several years, and plenty of noise. Two places can be in step on the yearly cycle and out of step on the slow one. And synchrony can switch on and off over the years. One number averages all of that away.

No nosso artigo, estudamos peixes em dez locais do rio Madeira, na Amazônia, acima e abaixo de uma hidrelétrica. Para ver quando a sincronia aconteceu e em quais ritmos, usamos wavelets. Este post mostra a ideia passo a passo, com populações simuladas que você controla.

In our paper we studied fish at ten sites along the Madeira River in the Brazilian Amazon, upstream and downstream of a hydroelectric dam. To see when synchrony happened and on which rhythms, we used wavelets. This post walks through the idea step by step, with simulated populations that you control.

Seu rio simuladoYour simulated river

Monte as populaçõesBuild the populations

A página abre com o caso do vídeo: um ciclo anual sempre em fase, um ciclo de 2,5 anos em fase só nos primeiros 10 anos e um ciclo de 5 anos que entra em fase depois do ano 15. Qualquer mudança aqui recalcula todas as figuras.The page opens with the case from the video: a yearly cycle that is always in step, a 2.5-year cycle in step only for the first 10 years, and a 5-year cycle that falls into step after year 15. Any change here recalculates every figure.

Editar os ciclosEdit the cycles

Cada ciclo tem um período e uma amplitude. Entre os anos escolhidos, os locais ficam em fase; fora deles, as fases se espalham pelo relógio (1 = espalhadas por inteiro).Each cycle has a period and an amplitude. Between the chosen years the sites are in step; outside them the phases spread around the clock (1 = fully spread).

Cada linha abaixo é um local. Toque numa linha para escolher o local que vamos acompanhar (em destaque).

Each line below is one site. Tap a line to choose the site we will follow (highlighted).

Abundância padronizada de cada local ao longo do tempo. A linha tracejada marca o momento escolhido no passo 3.Standardised abundance at each site over time. The dashed line marks the moment chosen in step 3.

Passo 1: deslize uma onda pelos dadosStep 1: slide a wave along the data

Imagine uma onda curta, uma ondulação só, com um ano de comprimento. Deslize essa onda pela série de uma população. Onde a população sobe e desce no mesmo ritmo da onda, o encaixe é forte. Repita com ondas mais curtas e mais longas e você ganha um mapa: o tempo na horizontal, o comprimento do ciclo na vertical e a cor mostrando a força de cada ritmo em cada momento. Esse mapa é a transformada wavelet.

Imagine a short wave, a single ripple, one year long. Slide it along a population's time series. Where the population rises and falls with the same rhythm as the wave, the match is strong. Repeat with shorter and longer waves and you get a map: time along the bottom, cycle length up the side, and colour showing how strong each rhythm is at each moment. That map is the wavelet transform.

Passo 1Step 1

Arraste a onda laranja pela série. Mude o comprimento da onda no controle. O mapa abaixo vai se acendendo por onde a onda passa.Drag the orange wave along the series. Change the wave length with the slider. The map below lights up wherever the wave has been.

Comprimento da ondaWave length

Cores escuras indicam um ritmo forte. A área hachurada fica perto das bordas da série, onde a onda não cabe inteira e o resultado não é confiável (o “cone de influência”). Toque no mapa para levar a onda até aquele ponto.Dark colours mean a strong rhythm. The hatched area lies near the ends of the series, where the wave does not fit and the result is unreliable (the “cone of influence”). Tap the map to move the wave there.

Passo 2: leia o ponteiro do relógioStep 2: read the clock hand

A wavelet dá mais uma informação: a fase. Pense nela como o ponteiro de um relógio para cada ritmo. No pico da população o ponteiro aponta para cima; enquanto ela cai, aponta para a esquerda; no vale, para baixo; e enquanto ela se recupera, para a direita. Uma volta completa é um ciclo completo. O ponteiro não diz quantos peixes existem, só em que ponto do ciclo a população está.

The wavelet gives us something else: the phase. Think of it as the hand of a clock for each rhythm. At a population peak the hand points up; while it falls it points left; at the trough it points down; and as it recovers it points right. One full turn is one full cycle. The hand says nothing about how many fish there are, only where the population is in its cycle.

Passo 2Step 2

Arraste o ponto pela onda (ou o ponteiro no relógio) e veja como os dois se movem juntos.Drag the dot along the wave (or the hand around the clock) and watch them move together.

Agora, dois locais. Afaste um do outro no tempo e veja a seta média (laranja, mais grossa) encolher. Com meio ciclo de defasagem, um local está no pico enquanto o outro está no vale, e a média some.Now two sites. Shift one against the other and watch the mean arrow (orange, thicker) shrink. Half a cycle apart, one site peaks while the other hits its trough, and the mean vanishes.

DefasagemShift

Passo 3: compare os relógiosStep 3: compare the clocks

Agora coloque lado a lado os ponteiros de todos os locais, para um momento e um ritmo. Se os locais estão no mesmo ponto do ciclo, os ponteiros se alinham e a média é uma seta longa. Se apontam para todos os lados, eles se cancelam e a média encolhe para perto de zero. Fazendo isso para todos os momentos e ritmos, temos um novo mapa, o campo médio de fasores (wavelet phasor mean field): um retrato de quando, e em quais ritmos, as populações estão em fase.

Now put the clock hands of all sites side by side, for one moment and one rhythm. If the sites are at the same point of their cycle, the hands line up and their average is a long arrow. If they point in all directions, they cancel out and the average shrinks towards zero. Doing this for every moment and every rhythm gives a new map, the wavelet phasor mean field: a picture of when, and on which rhythms, the populations are in step.

Por fim, comparamos o mapa com muitas versões embaralhadas dos dados (os surrogates), que mantêm os ritmos de cada local mas sorteiam as fases. Só as manchas mais fortes do que o acaso recebem um contorno.

Finally, we compare the map with many shuffled versions of the data (surrogates), which keep each site's rhythms but randomise their phases. Only the patches stronger than chance get an outline.

Passo 3Step 3

Toque ou arraste no mapa para escolher um momento e um ritmo. O relógio mostra o ponteiro de cada local e a seta média. Use ▶ para andar no tempo.Tap or drag on the map to pick a moment and a rhythm. The clock shows each site's hand and the mean arrow. Press ▶ to move through time.

cada localeach site local escolhidochosen site seta média (o campo médio)mean arrow (the mean field) contorno: mais forte que o acasooutline: stronger than chance

Visitas guiadas:Guided stops:

ExperimenteThings to try

  • Reduza para 3 locais. Mesmo em “Sem sincronia”, a seta média fica longa por acaso em vários pontos: com poucos locais, alinhar ponteiros é fácil. É por isso que precisamos dos surrogates.
  • Mude a amostragem para anual. O ciclo de um ano some: com uma amostra por ano, não dá para ver um ritmo anual.
  • Aumente o ruído para 2. Os ritmos continuam lá, mas as manchas significativas encolhem.
  • Diminua o número de anos. A área hachurada cresce: ciclos longos precisam de séries longas.
  • Drop to 3 sites. Even with “No synchrony”, the mean arrow is long by chance in many places: with few sites, hands line up easily. That is why we need surrogates.
  • Switch to yearly sampling. The one-year cycle disappears: with one sample a year you cannot see a yearly rhythm.
  • Raise the noise to 2. The rhythms are still there, but the significant patches shrink.
  • Shorten the series. The hatched area grows: long cycles need long series.

O que as wavelets mostraram no rio MadeiraWhat wavelets showed us in the Madeira River

[Resultado principal das wavelets, 2 a 3 frases: quais ritmos carregaram a sincronia, se ela foi contínua ou foi e voltou, e como as espécies diferiram.]

[Main wavelet result, 2–3 sentences: which rhythms carried the synchrony, whether it was continuous or came and went, and how species differed.]

A lição que levamos é que a sincronia tem um tempo e uma escala de tempo. Uma espécie que parece pouco sincrônica na média pode estar fortemente em fase num ritmo, por alguns anos. Para manejar peixes em rios alterados por barragens, esse detalhe importa: ele diz quando as populações têm mais chance de cair juntas e quais ritmos naturais as mantêm unidas.

The lesson we took away is that synchrony has a time and a timescale. A species that looks only weakly synchronous on average can still be strongly in step on one rhythm, for a few years. For managing fish in rivers changed by dams, that detail matters: it tells us when populations are most likely to crash together, and which natural rhythms hold them together.

O estudo completo está no Journal of Animal Ecology: [link do artigo]. Dados e código: [link do repositório]. As figuras deste post usam o mesmo método do pacote wsyn do R (Morlet com f0 = 1 e surrogates de Fourier), reescrito em JavaScript.

The full study is in the Journal of Animal Ecology: [link to the paper]. Data and code: [repository link]. The figures in this post use the same method as the R package wsyn (Morlet with f0 = 1 and Fourier surrogates), rewritten in JavaScript.

← Voltar ao blog← Back to the blog