我有一个从一组数据位置插值的彩色等高线图。我想在等高线图的顶部显示数据位置。出于某种原因,当我将它们绘制在一起时,彩色等高线图总是会掩盖数据位置。我先绘制哪个并不重要。
为什么是这样?以及如何强制将数据点绘制在顶部?
编辑:这是一张图片(三角形中间还有更多点):
在这种情况下,有几件事需要检查。很抱歉重复您已经尝试过的任何内容。
确保hold on
已设置,以便您实际绘制两个数据集。
尝试可用的不同渲染器。也就是说,尝试以下,一次一个。
设置(gcf,'渲染器','opengl')设置(gcf,'渲染器','画家')设置(gcf,'渲染器','zbuffer')
请注意,这些渲染选项之间还有其他交易。例如,我怀疑“画家”可能会提供最好的渲染,但更新速度会很慢,并且几乎不可能(例如)旋转。
这是一个很长的镜头,但试着简单地让你的标记更大。也就是说,更换
plot3(xdata, ydata, xdata, '.')
和
plot3(xdata, ydata, zdata, '.', 'markersize', 50)
如果这是一个 2D 图(我从您的编辑中看到它是),那么您可以使用第三维来强制执行正确的顺序。所有 2D 项目实际上都是以 3D 绘制的,Z=0。因此,如果您希望您的标记在表面上方绘制,您可以替换:
plot(xdata, ydata, 'o')
和
plot3(xdata, ydata, 0.1, 'o')
曲面和线被认为是非常不同的项目 b Matlab 和中间的图形系统。订购这些不同种类的物品有时需要一些帮助。