Altair 生成具有水平连接表的水平条形图

如果可能的话,我想使用altair创建一个水平条形图,其中包含水平连接并与条形对齐的表格中的一列或多列。我正在粘贴一个快速excel图表的示例,以大致了解我想要什么。

http://img1.mukewang.com/630717ae0001865f04580252.jpg

您网站上的以下示例(代码和图像),我为了空间而对其进行了子集化,与我想要的类似。但是,与其使用与条形长度对应的值进行文本叠加,不如创建一个具有值“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)

http://img.mukewang.com/630717bd0001d71104650441.jpg

噜噜哒
浏览 61回答 1
1回答

繁星点点滴滴

您可以使用水平串联代替分层来实现此目的。例如:import altair as altfrom vega_datasets import datasource = 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
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python