Как настроить граф Альтаира для указания c приращений? - PullRequest
2 голосов
/ 24 апреля 2020

Итак, я работаю с данными из опроса, который я создал. Я пытаюсь создать столбчатую диаграмму с накоплением, которая показывает разницу между полом и депрессией по сравнению с полученными ответами. Значения депрессии составляли 1,2,3,4,5 без промежуточных значений. Когда я пытаюсь построить это, оно дает мне инкрементные значения до 5. Как мне получить график 1–5 без значений приращения?

alt.Chart(df).mark_bar().encode(
x='Depression',
y='Responses',
color='Gender',
order=alt.Order(
  'Gender',
  sort='ascending'
)

Что дает мне это: enter image description here

Если честно, я знаю, что это не единственная ошибка в моем графике, но я пытаюсь выяснить, как заставить это действительно работать. Это только одна из проблем, с которыми я сталкиваюсь.

1 Ответ

3 голосов
/ 24 апреля 2020

Вы можете указать тип данных ordinal в своей кодировке.

Числовые данные в altair по умолчанию имеют тип кодирования количественный , который подходит для непрерывного, реального оцененные данные. Кодировка порядковый номер подходит для дискретных упорядоченных категорий, подобных тем, которые содержатся в ваших данных.

Вы можете указать порядковый код, используя сокращение "*:O" в кодировках:

alt.Chart(df).mark_bar().encode(
  x='Depression:O',
  y='Responses',
  color='Gender',
  order=alt.Order(
    'Gender',
    sort='ascending'
  )
)

Для получения дополнительной информации см. Типы данных кодирования в документации Altair и, в частности, Влияние типа данных на шкалы оси .

...