python config_error ai_generated true

ValueError: 'viridis'不是有效的颜色映射名称。有效名称包括:['Accent', 'Accent_r', 'Blues', ...]

ValueError: 'viridis' is not a valid colormap name. Valid names are: ['Accent', 'Accent_r', 'Blues', ...]

ID: python/matplotlib-cmap-name-error

其他格式: JSON · Markdown 中文 · English
80%修复率
83%置信度
0证据数
2024-06-10首次发现

版本兼容性

版本状态引入弃用备注
3.8 active
3.9 active

根因分析

颜色映射名称拼写错误(例如'viridis'拼写为'viridiss')或使用了不存在的名称,导致无法找到匹配的颜色映射。

English

Using a typo in colormap name (e.g., 'viridis' instead of 'viridis'? Actually 'viridis' is correct; if user types 'viridiss' or 'virid' it fails). The error occurs when the string does not match any registered colormap.

generic

解决方案

  1. 95% 成功率 Use the correct spelling from the list of valid colormaps
    plt.imshow(data, cmap='viridis')
  2. 90% 成功率 List all available colormaps to find the correct one
    from matplotlib import cm; print([m for m in cm._cmap_registry.keys()])

无效尝试

常见但无效的做法:

  1. Assuming case insensitivity and trying 'Viridis' 80% 失败

    Colormap names are case-sensitive; 'Viridis' is not valid, only 'viridis' works.

  2. Using a numeric index like 0 for the first colormap 90% 失败

    Colormaps are accessed by name, not numeric index.