Enquetes de "escolha ranqueada" não funcionam corretamente com gráficos de pizza

:information_source: Visão Geral

O uso do tipo de gráfico Pizza com enquetes de Escolha Classificada produz resultados incorretos. Cada opção recebe um voto, independentemente de como o usuário realmente classificou suas escolhas. Esse comportamento torna o gráfico enganoso e incompatível com a lógica de escolha classificada.

:walking_woman: Passos para reproduzir

  1. Clique em Criar Enquete no composer.
  2. Abra Opções avançadas (ícone de engrenagem).
  3. Preencha os campos da enquete (opcional), mas selecione “Pizza” em vez de “Barra” para o tipo de gráfico.
  4. Role de volta para o topo e selecione Escolha Classificada como o tipo de enquete.
  5. Salve e publique a enquete.

Neste ponto, a enquete estará usando o tipo de gráfico Pizza, que não foi projetado para funcionar com votação de escolha classificada.

:white_check_mark: Resultados esperados

O sistema deve:

  • Mudar automaticamente para o gráfico Barra quando “Escolha Classificada” for selecionado, ou
  • Impedir que o usuário selecione Pizza para enquetes de escolha classificada.

:x: Resultados observados

A enquete usa o gráfico Pizza e conta um voto por opção, mesmo que um usuário tenha classificado apenas uma ou algumas escolhas. O gráfico exibe todas as opções igualmente, tornando os resultados sem sentido:

:books: Contexto adicional

Solução temporária aplicada:

poll = Poll.find_by(id: 123)
poll.chart_type = 'bar'
poll.save

Atualizar manualmente o tipo de gráfico da enquete de pizza para bar no console corrige o problema e restaura os resultados precisos:

3 curtidas

Para sua informação, um caso de uso interessante @merefield

1 curtida

Este não é um caso extremo válido.

O Ranked Choice não tem um gráfico suportado no core atualmente.

Ele nunca foi feito para ser visualizado com um gráfico de pizza. O Ranked Choice consiste em rodadas e isso não pode ser representado em um gráfico de pizza.

O bug aqui, se houver, é provavelmente que alguém conseguiu selecionar um gráfico quando a interface deveria ter impedido. Alguém alterou o código de configuração para permitir isso?

Eu ofereci um gráfico apropriado, um Sankey, há um tempo, que estava funcionando, mas o Discourse se recusou a mesclá-lo porque adiciona uma biblioteca dependente (embora bem suportada e popular).

Ficarei feliz se alguém me financiar para trazer isso para o código moderno e preparar um PR se a CDCK mudar sua posição sobre a incorporação do Sankey.

Meu fork do plugin mostra um Sankey para Ranked Choice. É provável que esteja muito desatualizado e precise de manutenção, pois ninguém está financiando sua manutenção:

Sinta-se à vontade para fazer o que quiser com isso.

É muito legal, se me permite dizer.

É definitivamente melhor do que um gráfico de pizza!!

1 curtida