-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も制限したいと思います。ファイルには約100万のデータポイントがあります。

そして、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

axesはい、を使用して直接制限を指定するか、、、、および関数setを呼び出すことxlimで制限を指定できますylimzlim

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同じサイズの場合、明らかにこれは間違っているため、次のことを行う必要があります。xy

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

これで問題が解決しない場合は、コメントで述べたように、、、、およびベクトルのサンプルデータを含め、問題を再現するために実行できる完全なコードを提供する必要がxありyますlg

于 2012-11-21T16:32:05.117 に答える