-1

可能重复:
是否可以在散点图中选择特定区域

是否可以减少输入文本文件中的数据点,以便那些不会出现在我的计算中。我正在使用以下来读取数据

fid = fopen('cr.txt');
A =  textscan(fid, '%f %f %f %f %f %*f %*f %*f %*f %*f %*s %*s %*s') ;
%read the file
a = A{1};
e = A{2};
c = A{3};
x = A{4};
y = A{5};

这里 x,y 是距离,如果我应用 xlim 和 ylim,我也想限制文件中相应的 a,e,c。该文件有大约百万个数据点。

我将进一步绘制 x、y 和 z(从 a、e、c 计算)作为散点图和颜色条,我用于整个数据点的绘图代码是

lg=log10(g2);
scatter(x(1:end-1), y(1:end-1),5, lg);
colorbar('eastoutside');
caxis([14 max(lg)]);
xlabel(' X-axis (microns)');
ylabel('Y-axis (microns)');

lg 由前面所示的 a,e,c 确定。所以我想做的就是在 x,y 的选定部分和相应的 lg 之间做一个绘图。

请帮忙!!

4

2 回答 2

0

是的,您可以直接在axesusingset或通过调用xlimylimzlim 函数指定限制

plot(rand(1,100));
set(gca,'XLim', [10 20] ); % set the xlims to 10,20

或者

plot(rand(1,100));
xlim([10 20]); % set the xlims to 10,20
于 2012-11-21T14:55:14.983 回答
0

好吧,这可能太明显了,无法解决您的问题,但是在这一行中:

scatter(x(1:end-1), y(1:end-1),5, lg);

如果lg大小与xand相同y,那么显然这是错误的,您需要这样做:

scatter(x(1:end-1), y(1:end-1),5, lg(1:end-1));

如果这不能解决您的问题,那么正如我在评论中所说,您必须提供我们可以运行以重现问题的完整代码,包括 、 和向量的x示例y数据lg

于 2012-11-21T16:32:05.117 回答