我试图使用带有PyPlot后端的Plots在Julia中叠加两个等值线图。是否可能,如果可能,怎么样?
MWE看起来像这样:
using Plots
pyplot()
a = rand(50,50)
b = rand(50,50)
p1 = contour(a,seriescolor=:blues)
p2 = contour(b,seriescolor=:reds)
plot(p1,p2,layout=1)
(此代码生成ERROR: When doing layout, n (1) != n_override (2)
。我确实理解错误,但我不知道如何绕过它。)
答案 0 :(得分:0)
使用contour!
:
using Plots
pyplot()
a = rand(50,50)
b = rand(50,50)
contour(a,seriescolor=:blues)
contour!(b,seriescolor=:reds)
第一个等高线绘制a。第二个轮廓!在绘制a的同一画布上绘制b。
!
? !
是朱莉娅(以及其他一些语言)惯用的惯例。 Julia并没有给出任何特殊的意义,但开发人员却这样做:惯例是在方法改变现有状态时将!
附加到方法声明,例如:修改其中一个参数。在这种情况下,contour!
用于通过将其与另一个图重叠来修改现有图。