我有一个相当复杂的绘图问题,我认为获得解决方案会很有趣。说我有两个地块,编号1:
这个情节是使用plotyy创建的。
第2名:
该图是使用plot3(x,y,z,'。')
创建的现在,复杂的部分是我想取第2号地块,给它加水印并将它放在第1号地块后面。这会产生这样的结果:
实际上,我希望展示的是情节1是由看起来像情节2的数据制作的。现在我还没有找到如何做到这一点所以它甚至可能不可能,但是如果可以做到的话那么堆栈溢出就是一个很好的教程!
答案 0 :(得分:3)
你可以做到这一点,但是需要做一些工作才能让轴格式化,看起来很漂亮。
您需要做的是将一个axes
对象放在另一个axes
之上;但是,要防止顶部axes
遮挡底部'Color'
,您需要将顶部axes
对象的'none'
属性设置为f = figure;
axes();
x = rand(100,3)*3 + 3;
plot3(x(:,1), x(:,2), x(:,3),'.');
axes('Color', 'none');
x = -5:5;
y = x.^2;
line(x,y, 'Color', 'r', 'LineWidth', 2);
。
这是一个示例脚本,可以生成类似于您要查找的内容
{{1}}
以下是结果图:
如果您不喜欢这样做,您可以尝试将3D数据投影到2D中,然后将该投影绘制为线条后面的图像。这是关于如何创建2D投影的link to a discussion。