Опросы с ранжированным выбором некорректно отображаются на круговых диаграммах

:information_source: Обзор

Использование типа диаграммы Pie (круговая) для опросов с ранжированным выбором приводит к некорректным результатам. Каждый вариант получает по одному голосу, независимо от того, как пользователь на самом деле расположил свои предпочтения. Такое поведение делает диаграмму вводящей в заблуждение и несовместимой с логикой ранжированного выбора.

:walking_woman: Шаги для воспроизведения

  1. В редакторе нажмите Build Poll (Создать опрос).
  2. Откройте Advanced options (Дополнительные настройки) (иконка шестеренки).
  3. Заполните поля опроса (необязательно), но в качестве типа диаграммы выберите «Pie» вместо «Bar».
  4. Прокрутите обратно вверх и выберите Ranked Choice (Ранжированный выбор) в качестве типа опроса.
  5. Сохраните и опубликуйте опрос.

На этом этапе опрос будет использовать тип диаграммы Pie, который не предназначен для работы с голосованием с ранжированным выбором.

:white_check_mark: Ожидаемый результат

Система должна либо:

  • Автоматически переключаться на тип диаграммы Bar (столбчатая) при выборе «Ranked Choice»,
  • Либо полностью запрещать пользователю выбирать Pie для опросов с ранжированным выбором.

:x: Фактический результат

Опрос использует диаграмму Pie и подсчитывает по одному голосу на каждый вариант, даже если пользователь указал только один или несколько предпочтений. Диаграмма отображает все варианты одинаково, что делает результаты бессмысленными:

:books: Дополнительная информация

Применен временный обходной путь:

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

Ручное изменение типа диаграммы опроса с pie на bar в консоли исправляет проблему и восстанавливает корректные результаты:

3 лайка

К сведению, интересный частный случай @merefield

1 лайк

Это не корректный крайний случай.

В ядре на данный момент нет поддерживаемого графика для Ranked Choice — и это сделано намеренно.

Такой тип голосования никогда не предназначался для визуализации в виде круговой диаграммы. Ranked Choice состоит из раундов, которые невозможно отобразить на одной круговой диаграмме.

Ошибка здесь, если она вообще есть, скорее всего, заключается в том, что кто-то может выбрать график, хотя интерфейс должен был это предотвратить. Не менял ли кто-то код настройки, чтобы разрешить это? Тем не менее, вы всегда могли «взломать» начальный Markdown для изменения атрибутов после завершения «мастера» (что не является хорошей практикой).

Некоторое время назад я предлагал подходящий график — диаграмму Санкей, которая работала, но Discourse отказался её включить, так как это требует добавления зависимой библиотеки (хотя она хорошо поддерживается и популярна). Справедливо.

Я готов выполнить работу за вознаграждение, чтобы обновить этот код до современных стандартов и подготовить pull request, если CDCK изменит свою позицию относительно внедрения диаграммы Санкей.

Мой форк плагина отображает диаграмму Санкей для Ranked Choice. Вероятно, он сильно устарел и требует поддержки, так как никто не финансирует её:

Вот примерный набор изменений для диаграммы Санкей:

Делайте с этим всё, что считаете нужным.

Это довольно круто, если мне не возбраняется так сказать.

Это определённо лучше, чем круговая диаграмма!! :sweat_smile:

Я рекомендую перенести это в категорию #feature с формулировкой запроса:

  • добавить подходящую визуализацию для Ranked Choice.
1 лайк