Альтаир для создания горизонтальной гистограммы с горизонтально объединенной таблицей - PullRequest
1 голос
/ 11 марта 2020

Если возможно, я бы хотел использовать altair для создания горизонтальной гистограммы со столбцом или столбцами из таблицы, которая горизонтально соединена и выровнена по столбцу. Я привожу пример диаграммы быстрого Excel, чтобы получить приблизительное представление о том, что я хочу.

example

Следующий пример с вашего сайта ( код, а затем изображение), который я поднастроил ради пространства, похож на то, что я хотел бы. Однако вместо наложения текста со значением, соответствующим длине стержня, я хочу создать горизонтальную столбчатую диаграмму со значением «x» и горизонтально соединенную таблицу с отдельным значением «p», которое соответствует этому образцу.

import altair as alt
from vega_datasets import data

source = data.wheat()
sourceTrunc = source.head(15)

bars = alt.Chart(sourceTrunc).mark_bar().encode(
    x='wheat:Q',
    y="year:O"
)

text = bars.mark_text(
    align='left',
    baseline='middle',
    dx=3  # Nudges text to right so it doesn't appear on top of the bar
).encode(
    text='wheat:Q'
)

(bars + text).properties(height=400)

foundation

1 Ответ

1 голос
/ 11 марта 2020

Вы можете использовать горизонтальное сцепление вместо наслоения для достижения этого. Например:

import altair as alt
from vega_datasets import data

source = data.wheat()
sourceTrunc = source.head(15)

bars = alt.Chart(sourceTrunc).mark_bar().encode(
    x='wheat:Q',
    y="year:O"
)

text = alt.Chart(sourceTrunc).mark_text().encode(
    y=alt.Y('year:O', axis=None),
    text='wheat:Q'
).properties(width=30)

bars | text

enter image description here

...