Altair 挂在这张图表上?

Altair hangs with this chart?

我有一个包含以下内容的简单 csv:

Pattern, Mode, Bandwidth
Random, Read, 23.988
Random, Write, 30.628
Seq, Read, 38.000
Seq, Write, 33.785

我想生成与 this one:

类似的分组条形图
import altair as alt
import pandas as pd
df = pd.read_csv("simple.csv")
alt.Chart(df).mark_bar().encode(
    x='Bandwidth:Q',
    y='Mode:N',
    row='Pattern:N'
)

只是挂起 altair(我必须终止 jupyter notebook 的会话才能退出)。 也就是说,如果我手动输入数据:pd.DataFrame([ ], [], columns = []。相同的绘图命令似乎部分有效。

没关系,我在读取 CSV 文件时似乎没有输入 skipinitialspace=True,结果弄乱了列名。

您的 CSV 文件中似乎有空格,因此列名不是 'Mode''Bandwidth',而是 ' Mode'' Bandwidth'(前导空格)。

最好的解决方法是从 CSV 文件中删除空格。如果那不可能,那么在 pandas 中,您可以将 skipinitialspace=True 参数传递给 pd.read_csv 以在将数据读入数据帧时去除这些空格。