;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Fluminense

Números apontam Nino e Digão como zaga "ideal" do Flu apesar de críticas

Nino e Digão voltarão a formar a dupla de zaga titular do Fluminense - Mailson Santana/Fluminense FC
Nino e Digão voltarão a formar a dupla de zaga titular do Fluminense Imagem: Mailson Santana/Fluminense FC

Caio Blois

Do UOL, no Rio de Janeiro (RJ)

25/02/2020 04h00

Desde que Thiago Silva deixou o Fluminense rumo à Europa que a zaga do Tricolor convive com críticas. Nem mesmo os bicampeões brasileiros Gum e Leandro Euzébio escaparam da "corneta" dos tricolores. Em busca de ajustes, o técnico Odair Hellmann promoveu o retorno de Nino ao time titular. E os números do site Footstats mostram que a dupla do jovem de 22 anos com Digão é mesmo a "ideal" considerando as opções no elenco.

Um dos poucos destaques do Flu em 2019, Nino começou a temporada sendo convocado para a seleção sub-23 que disputou o Pré-Olímpico na Colômbia. O zagueiro foi também comprado pelo Tricolor por R$ 5 milhões junto ao Criciúma, em negócio considerado bom para todas as partes.

"Vejo um grupo mais forte que o do ano ado. Em todas as posições há uma briga muito saudável. Estou muito animado por essa volta. Feliz por estar à disposição do professor e ansioso para esse nosso ano de 2020, porque creio que grandes coisas vão acontecer", afirmou Nino em coletiva.

Na última temporada, o defensor disputou 50 jogos com a camisa tricolor e marcou um gol. E as estatísticas o apontaram como um dos melhores zagueiros do Campeonato Brasileiro. Entre atletas qualificados (com 15 jogos ou mais), Nino se destacou em cinco categorias de sua posição: foi o segundo em es e dribles certos e o sexto melhor em aproveitamento de es (96,8%), desarmes e interceptações.

Ao seu lado, o jovem de 22 anos teve muitos companheiros. E se a dupla com Matheus Ferraz parecia a melhor ainda no início da temporada ada, sob o comando de Fernando Diniz, os números mostram também que Digão foi superior ao experiente jogador de 35 anos mesmo com uma amostragem maior, o que em tese facilitaria a redução de suas médias.

Entre os zagueiros, o capitão do Fluminense foi o 4º que mais acertou es no Brasileirão de 2019 em média, com 97,5% das 1135 tentativas concluídas com sucesso. O jogador de 31 anos ficou na mesma posição em interceptações e foi o 10º que mais desarmou, com dois desarmes por tentativa.

A história pelo clube também pesa a favor de Digão, único remanescente - ainda que esteja em sua segunda agem - dos elencos campeões brasileiros de 2010 e 2012. Com 166 jogos, o camisa 26 é o jogador que mais atuou pelo Tricolor no grupo atual. Ele marcou oito gols pelo Flu.

Digão comemora gol com Gum no Fluminense - Agencia Photocamera - Agencia Photocamera
Imagem: Agencia Photocamera


Já Ferraz também teve boas médias em es, com os mesmos 97,5% em menos tentativas por jogo, mas mostrou números ruins em interceptações (0,1 por jogo) e desarmes (0,4 por jogo). Se utilizados os números do Estadual, com nível técnico mais baixo, as médias sobem para 0,7 e 1, respectivamente, mas ainda registros abaixo do titular da equipe de Odair no espaço estendido.

A qualidade técnica, considerada superior aos concorrentes, é motivo de um pedido de torcedores nas redes sociais para que o experiente zagueiro volte a ser titular, retomando a posição que tinha até sofrer séria lesão no joelho em 2019. Matheus Ferraz atuou em 35 jogos pelo Fluminense e marcou três gols.

No elenco atual, é bem verdade, Odair tem outras opções como Luccas Claro, que não teve amostragem suficiente para estatísticas até aqui mas se destacou no setor ofensivo, com três gols em 2020. Além do jogador que vinha sendo titular, o Fluminense tem outros jovens para a posição, como Luan, Hiago, Geovani e Diogo, que integram o grupo sub-23. O primeiro da lista acumula convocações para a seleção sub-20 e pode ser uma novidade no banco de reservas nas próximas partidas.

Fluminense