[英]Mark all the points in the plot in MATLAB
x和y軸對應於帶有(x,y)的二維陣列。 我想根據返回布爾值的某些函數標記所有點。
f(xAxis_array,yAxis_array)返回True / False。 如果是真的,我想用紅色標記該點,否則用黑色標記。
例如,我想要得到類似的結果:
先感謝您!
那很容易。 您可以將數據分為兩部分-一部分滿足約束條件,另一部分不滿足約束。 然后,您可以使用兩個部分來調用plot
,並為每個點着色不同。 因此,給定兩個數組xAxis_array
和yAxis_array
,並給定函數f
(假定向量化),您可以執行以下操作:
ind = f(xAxis_array, yAxis_array);
redx = xAxis_array(ind);
redy = yAxis_array(ind);
blackx = xAxis_array(~ind);
blacky = yAxis_array(~ind);
plot(redx, redy, 'r.', blackx, blacky, 'k.');
代碼的第一行針對xAxis_array
和yAxis_array
每對點返回True/False
。 這將是一個logical
向量,向您提供相應點是True
還是False
。 完成后,我們將使用邏輯索引來分離出應標記為紅色的點和應標記為黑色的點。 一旦將它們分開,我們將使用一個plot
調用,以便將那些應該是紅色的坐標標記為該顏色,而將那些黑色的坐標標記為該顏色。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.