Я хочу создать «двустороннюю» гистограмму, показывающую полученные баллы (по некоторым показателям) по сравнению с пропущенными баллами, примерно так:

Результат такой далеко
Мне удалось это сделать
Код: Выделить всё
import altair as alt
import pandas as pd
source = pd.DataFrame(
{
"cohort": ["A", "B", "C", "D", "E", "F", "G", "H", "I"],
"gained": [28, 55, 43, 91, 81, 53, 19, 87, 52],
"missed": [5, 8, 34, 21, 16, 22, 9, 7, 11],
}
)
up = (
alt.Chart(source)
.mark_bar(color="blue")
.encode(
x=alt.X("cohort:N").axis(labels=False, title=None, ticks=False),
y=alt.Y("gained:Q"),
)
)
down = (
alt.Chart(source)
.mark_bar(color="red")
.encode(
x=alt.X("cohort:N").axis(labelAngle=0),
y=alt.Y("missed:Q", scale=alt.Scale(reverse=True)),
)
)
alt.vconcat(up, down).resolve_scale(x="shared")

Можно ли как-нибудь убрать этот пробел? Или, возможно, сделать это совершенно по-другому с Вега-Альтаиром?
Подробнее здесь: https://stackoverflow.com/questions/786 ... hared-axis