在Altair中创建具有多个轴和间隙的堆叠图表

2024-06-08 20:17:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个图表,描绘牵牛星上同一时间尺度上的两个不同过程。下面是excel中的一个示例

Here is an example

我使用以下数据在excel中生成了下面的堆叠水平条形图。红色数字是偏移/间隙,不会显示在最终绘图中。这些数字没有什么特别之处,请随意使用其他数字

enter image description here

红色的数字是偏移量和偏移量 我本来会发布一个尝试,但我完全不知道该从什么功能开始。任何帮助都将不胜感激


Tags: 数据功能绘图示例过程图表水平数字
1条回答
网友
1楼 · 发布于 2024-06-08 20:17:18

下面是一个示例,说明如何制作这样的图表,使用条件不透明度隐藏偏移值:

import altair as alt
import pandas as pd

df = pd.DataFrame({
    'axis': [1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2],
    'value': [0.5, 0.9, 2, 1, 3, 1, 0.8, 1, 1.4, 1.1, 4.1, 0.3, 1.1],
    'label': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', None, 'C', None, 'F', 'G']
})

alt.Chart(df.reset_index()).mark_bar().encode(
    y=alt.Y('axis:O', scale=alt.Scale(domain=[2, 1])),
    x='value:Q',
    color=alt.Color('label:N', legend=None),
    opacity=alt.condition('isValid(datum.label)', alt.value(1), alt.value(0)),
    order=alt.Order('index:Q', sort='ascending')
)

enter image description here

相关问题 更多 >