0

我正在使用 matlab 以伪彩色图形 ( pcolor) 可视化我的数据。以 pcolor 显示数据效果很好,但现在我又得到了一个数据集。如果我将每个数据集绘制在单独的 pcolor 图中,一切都很好。但是现在,我将这两个数据结合起来

NEW_DATA = [OLDDATA1, OLDATA2]

如果我改为对 NEW_DATA 着色,颜色就会变得混乱。这是我可以在不丢失任何细节或颜色信息的情况下显示组合数据的任何方式吗?在我的情况下,如果你 plot pcolor(NEW_DATA),一般形状保持不变(就像[pcolor(OLDDATA1), pcolor(OLDATA2)]),但一些细节变得模糊

4

1 回答 1

1

pcolor图中,顶点颜色被缩放到颜色图中。'clim'您可以使用轴的属性设置缩放。我猜这里发生的事情是两者之间的缩放比例OLDDATA和组合的不同NEWDATA

最终,您需要决定使用哪种缩放比例;如果您喜欢来自 的原件OLDDATA1,您可以执行以下操作:

pcolor(OLDDATA1);
orig_clim = get(gca,'clim'); %# just to get the color limits

pcolor(NEWDATA);
set(gca, 'clim', orig_clim);

如果您喜欢两个 OLDDATA图的原始缩放比例并且没有适用于两者的缩放比例,您可以手动创建一个图形,其中两个轴彼此相邻放置(而不是依赖于subplot)。每个轴对象都可以有自己clim的方式,但是这两个图将显示为连续的。

figure;
h1 = axes('units','normalized','position',[.05 .05 .45 .45]);
h2 = axes('units','normalized','position',[.5  .05 .45 .45]);
pcolor(h1, OLDDATA1);
pcolor(h2, OLDDATA2);
set(h2, 'ytick', []); %# turn off ytick (if it was on)
于 2012-06-27T06:46:59.557 回答