У меня есть данные, которые выглядят так:
data = {'ColA': {('A', 'A-1'): 'w',
('A', 'A-2'): 'w',
('A', 'A-3'): 'w',
('B', 'B-1'): 'q',
('B', 'B-2'): 'q',
('B', 'B-3'): 'r',
('C', 'C-1'): 'w',
('C', 'C-2'): 'q',
('C', 'C-3'): 'q',
('C', 'C-4'): 'r'},
'ColB': {('A', 'A-1'): 'r',
('A', 'A-2'): 'w',
('A', 'A-3'): 'w',
('B', 'B-1'): 'q',
('B', 'B-2'): 'q',
('B', 'B-3'): 'e',
('C', 'C-1'): 'e',
('C', 'C-2'): 'q',
('C', 'C-3'): 'r',
('C', 'C-4'): 'w'}}
Затем я создаю две гистограммы:
df = pd.DataFrame(data)
df[ df.columns ] = df[ df.columns ].astype('category')
df.index = pd.Index( [ ': '.join( x ) for x in list( df.index.to_flat_index() ) ] )
X = alt.X( alt.repeat(), type = 'nominal' )
Y_scale = alt.Scale( domain = [0, len( df.index ) ] )
Y = alt.Y( aggregate = 'count', type = 'quantitative', scale = Y_scale )
alt.Chart( df ).mark_bar().encode( X, Y ).repeat( list( df.columns ) )
, что приводит к двум гистограммам, которые выглядят следующим образом:
гистограммы
Обратите внимание, что данные для ColA не содержат значений 'e', поэтому гистограмма не содержит отметок для этих значений. Для диаграммы ColA я бы хотел поставить галочку для 'e', чтобы там не было столбца, поэтому диаграммы ColA и ColB выглядят одинаково и их легко сравнить.
Как я могу это сделать