簡體   English   中英

在MATLAB中標記圖中的所有點

[英]Mark all the points in the plot in MATLAB

x和y軸對應於帶有(x,y)的二維陣列。 我想根據返回布爾值的某些函數標記所有點。

f(xAxis_array,yAxis_array)返回True / False。 如果是真的,我想用紅色標記該點,否則用黑色標記。

例如,我想要得到類似的結果:

Imgur picture

先感謝您!

那很容易。 您可以將數據分為兩部分-一部分滿足約束條件,另一部分不滿足約束。 然后,您可以使用兩個部分來調用plot ,並為每個點着色不同。 因此,給定兩個數組xAxis_arrayyAxis_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_arrayyAxis_array每對點返回True/False 這將是一個logical向量,向您提供相應點是True還是False 完成后,我們將使用邏輯索引來分離出應標記為紅色的點和應標記為黑色的點。 一旦將它們分開,我們將使用一個plot調用,以便將那些應該是紅色的坐標標記為該顏色,而將那些黑色的坐標標記為該顏色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM