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

Makie.jl中循环绘图时如何避免轴元素重叠?

Makie.jl循环绘图轴重叠问题的原因与解决方法

问题原因

你这段代码的核心问题是每次循环都重复创建了Axis对象:在for循环的每一轮,都执行ax = Axis(f[1, 1]),相当于在同一个布局位置f[1,1]上叠加了10个独立的轴。每个轴都自带一套y轴刻度、边框等元素,叠加后就出现了y轴元素重叠的视觉效果。

解决方法

只需要把Axis的创建逻辑移到for循环外面,确保整个绘图过程只生成一个轴,循环里仅执行绘图命令即可:

f = Figure()
ax = Axis(f[1, 1])  # 只创建一次轴
for i in 1:10
    density!(ax, rand(20), color = (:red, 0.0),
             strokecolor = :red, strokewidth = 1, strokearound = false)
    xlims!(ax, 0.0, 1.0)  # 也可以把xlims放在循环外,避免重复设置
end
f

这样所有密度线都会绘制在同一个轴上,不会出现轴元素重叠的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 03:10:43