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

如何在Julia的GLMakie中将绘图背景全部设置为黑色?

解决GLMakie绘制奇怪吸引子背景黑色的问题

问题出在datashader生成的绘图层默认背景为白色,覆盖了你设置的Axis背景色,导致只有边框显示黑色。以下是修改后的代码及关键调整点:

关键修改

  • 在datashader调用中直接指定backgroundcolor,设置无数据区域的颜色为黑色
  • 将Axis的背景色配置合并到axis关键字参数中,确保生效

修改后的完整代码片段

fig = Figure(size=(1500, 1500), backgroundcolor = RGBAf(0, 0, 0, 1))
fig_grid = CartesianIndices((1, 1))
cmap = to_colormap(:BuPu_9)
cmap[1] = RGBAf(1, 1, 1, 1) 

let
    n_points = 10^6
    for (i, arg) in enumerate(cargs)
        points = trajectory(Juan, arg...; n=n_points) # 去掉冗余的global,let块内用局部变量更规范
        r, c = Tuple(fig_grid[i])
        ax, plot = datashader(fig[r, c], points;
            colormap=cmap,
            async=false,
            backgroundcolor=RGBAf(0, 0, 0, 1), # 核心:设置datashader空白区域背景为黑色
            axis=(; 
                type=Axis, 
                title=join(string.(arg), ", "),
                backgroundcolor=RGBAf(0, 0, 0, 1) # 配置Axis自身背景色
            ))

        hidedecorations!(ax)
        hidespines!(ax)
    end
end
rowgap!(fig.layout,5)
colgap!(fig.layout,1)
display(fig)

额外说明

  • datashader的backgroundcolor参数直接控制绘图区域的空白背景色,这是解决问题的核心
  • 同时配置Axis背景色,确保datashader图层未覆盖到的边缘区域也显示黑色
  • 去掉global关键字符合Julia局部变量优先的编程规范

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 13:32:03