とy
の2つのベクトルとして与えられる関数f
を描画したいので、y=f(x)
です。 私はplot(x,y)
を使用しますが、今、私はそれがこのように見えるので、それがもとで0以上の青と赤される必要があります:あなたは、MATLABのベクトル、NaNを充填されているそのベクトルの任意のセグメントをプロットするとMatlabの二色プロット
5
A
答えて
8
プロットされません。あなたの目標を達成するための1つのトリックは、Nansを使用して関連するセグメントを削除して元のものの上に2行目をプロットすることです。たとえば、この呼ばれる条件付き色のラインプロットhttp://www.mathworks.coのためのMathWorksファイル交換サイト上のスクリプトが
x = linspace(1,100,1000);
y = sin(x);
% Using a cutoff of y>=0.5
belowCutoff = y;
belowCutoff(y>=0) = NaN; % Replace points above cutoff with NaNs;
figure;
plot(x,y,'r',x, belowCutoff, 'b');
1
y0 = 0; % threshold
color1 = [1 0 0]; % below threshold
color2 = [0 0 1]; % above threshold
x = 1 : 10;
y = randn(1, 10);
threshold_plot(x, y, y0, color1, color2);
function threshold_plot(x, y, y0, color1, color2)
hold on;
n = length(x);
for i = 2 : n
x1 = x(i - 1); y1 = y(i - 1);
x2 = x(i); y2 = y(i);
ascending = y1 < y2;
if x1 == x2
if ascending
plot([x1 x2], [y1, y0], 'Color', color1);
plot([x1 x2], [y0, y2], 'Color', color2);
else
plot([x1 x2], [y1, y0], 'Color', color2);
plot([x1 x2], [y0, y2], 'Color', color1);
end;
elseif y1 == y2
if threshold <= y1
plot([x1 x2], [y1 y2], 'Color', color2);
else
plot([x1 x2], [y1 y2], 'Color', color1);
end;
else
a = (y2 - y1)/(x2 - x1);
b = y1 - a * x1;
x0 = (y0 - b)/a;
if x1 <= x0 && x0 <= x2
if ascending
plot([x1 x0], [y1, y0], 'Color', color1);
plot([x0 x2], [y0, y2], 'Color', color2);
else
plot([x1 x0], [y1, y0], 'Color', color2);
plot([x0 x2], [y0, y2], 'Color', color1);
end;
else
if y0 <= y1
plot([x1 x2], [y1 y2], 'Color', color2);
else
plot([x1 x2], [y1 y2], 'Color', color1);
end;
end;
end;
end;
関連する問題
- 1. Matlabプロットの色の一致
- 2. MATLABの二次方程式のプロット解
- 3. Matlabの3Dプロット
- 4. Matlabプロットのカスタムマーカー
- 5. 色を割り当てる関数(二変量データのRプロット)
- 6. ある特定の色から別の色への大学院のmatlabプロット
- 7. 矩形でのMatlabプロットの色の背景
- 8. Matlabのbar3プロットのグループの色を制御する方法
- 9. MATLABで異なる色の複数の列をプロット
- 10. matlab:プロットを着色するための配列の使い方
- 11. 2次元プロット(MATLAB)のデータの色分けされた表現
- 12. MATLABに3色の線をプロットしたい
- 13. 複数のヒストグラムをmatlabで異なる色でプロットする
- 14. は、MATLABプロット
- 15. プロット画像:MATLAB
- 16. MATLABプロット変換
- 17. Matlabのプロット 'while'ループ
- 18. Matlabの密度プロット
- 19. Matlab:色校正なしでプロットする方法は?
- 20. 二重棒プロットmatplotlib
- 21. 二次差分プロット
- 22. Matlabのプロット:ベクトル値が> 1、プロット赤なら、そうでなければ、プロット青色
- 23. matlabで複数のプロットをプロットする
- 24. ビート信号プロットMatlab
- 25. MATLAB FFT位相プロット
- 26. matlab fitensembleプロットrocエラー
- 27. MATLABでプロットする
- 28. Matlabの二重スペースJavaスタックトレースエラー
- 29. Matlabのプロットの印刷
- 30. SymPyの多色プロット
があります。 uk/matlabcentral/fileexchange/30423-条件付きカラーラインプロット – KatyB