首页 > 解决方案 > Julia 中带有子图的 hline/vline

问题描述

我正在尝试向子图添加一条水平线,从这个讨论中:https ://discourse.julialang.org/t/vline-with-subplots/25479/2 ,我有以下内容

x = [1,2,3]
y1 = 2x
y2 = x.^2
plot([x, x], [y1, y2], layout = (2, 1))
hline!([4 4])

这产生了情节。

地块

现在我要做的是在底部绘图上做水平线,而不是在顶部做水平线。如果我只指定hline!([4]),它默认为顶部的。有没有办法只做底部的?

标签: juliaijulia-notebookjulia-plots

解决方案


诀窍是跟踪情节句柄。

p = plot([x, x], [y1, y2], layout = (2, 1))

返回具有两个元素(第一个子图)和(第二个子图)的图句柄(特别是一个Plots.Plot{Plots.GRBackend}对象)。要将 hline 仅添加到底部图,您可以编写:pp[1]p[2]

x = [1,2,3]
y1 = 2x
y2 = x.^2
p = plot([x, x], [y1, y2], layout = (2, 1))
hline!(p[2], [4])

在此处输入图像描述


推荐阅读