altair pandas количество значений горизонтальная гистограмма - PullRequest
1 голос
/ 16 июня 2020
import random
random.seed(49)
source = pd.Series([random.choice('abc') for _ in range(100)]).value_counts()
source.plot(kind='barh')

Учитывая серию подсчетов значений, примененную выше, и график горизонтальной полосы char с подсчетами каждого вхождения значения.

Как воспроизвести этот простой пример в altair?

Есть ли там доступное преобразование, где когда можно подсчитать или сгруппировать вхождения серии, а затем построить график, избегая метода value_counts?

pandas 0,25,0 python 3,7

Заранее спасибо

1 Ответ

2 голосов
/ 16 июня 2020
import altair as alt
import random
random.seed(49)
source = pd.Series([random.choice('abc') for _ in range(100)]).value_counts()

alt.Chart(source.reset_index().rename(columns={0:'counts'})).mark_bar().encode(
    y='index:N',
    x='counts'
)

enter image description here

или, альтернативно, пусть Альтаир подсчитывает:

source = pd.DataFrame([random.choice('abc') for _ in range(100)], columns=['kind'])
alt.Chart(source).mark_bar().encode(
    alt.Y('kind:N'),
    alt.X('count(kind):Q')
)

enter image description here

...