You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Altair绘制散点图输出空图无数据点的问题排查

问题根因

你遇到的Altair空图问题和控制台的source map警告完全无关,该警告只是缺失了调试用的映射文件,不影响图表渲染功能。
导致空图的核心原因是:

  • 你在定义X/Y轴编码时,使用了字段名:类型的简写语法,而你的字段名FP32 (single precision) Performance [FLOP/s]中包含括号、方括号等Vega-Lite语法的特殊字符,Altair解析字段名时出现识别错误,无法匹配到DataFrame中对应的列,因此没有数据点渲染。
  • 次要优化点:你手动设置的坐标轴domain完全贴合数据的最小/最大值,没有预留边距,可能导致边缘数据点被裁切。

修复方案

将X/Y轴的定义改为显式指定field和type参数,避免特殊字符解析问题,示例代码如下:

alt.themes.enable('fivethirtyeight')
alt.Chart(df).mark_circle(size=60).encode(
  x=alt.X(
          field=x_axis,
          type='quantitative',
          scale=alt.Scale(
                          domain=(df[x_axis].min(), df[x_axis].max()),
                          padding=5 # 可选,添加边距避免边缘点被裁切
                          ),
          axis=alt.Axis(format=".0f")
          ),
  y=alt.Y(
          field=y_axis,
          type='quantitative',
          scale=alt.Scale(
                          domain=(df[y_axis].min(), df[y_axis].max()),
                          padding=5
                          ),
          axis=alt.Axis(format=".1e")
          ),
)

如果修改后还是无法显示,可以在代码最后显式调用.show()方法触发渲染:

chart = alt.Chart(df).mark_circle(size=60).encode(...)
chart.show()

内容的提问来源于stack exchange,提问作者Jsevillamol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 08:45:03