2012-12-03 44 views
5

我已經實現的算法,這裏是從我的資源書一個情節:Matlab的扣帽子的集羣

enter image description here

我是新來的Matlab的。我有一個xValues列表,yValues列表(我已經將最終矩陣分成了x和y軸,我不確定是否是真的,如果你提出一個建議,歡迎你)和一個標籤向量。

我想像上面那樣得到一張圖片。我怎麼能像給定的圖像一樣放置一些類標籤(即0,1,2,3 ..)?

PS:我的情節如下:plot(xValues,yValues,'b.');但是我的點像鑽石一樣,沒有像圖像中的點。

回答

2

您可以使用text來繪製場景中的文字。 (Matlab的幫助:)

text(X,Y,'string') adds the text in the quotes to location (X,Y) 
on the current axes, where (X,Y) is in units from the current 
plot. 

你需要知道你要繪製文本的圖形,但你可以這樣做:

x = -pi:.1:pi; 
y = sin(x); 
p = plot(x,y) 

text(-pi/4,sin(-pi/4),'7') 
text(-pi/4+1,sin(-pi/4),sprintf('%d', 8)) 
text(-pi/4+2,sin(-pi/4),'9') 

,這將給你:

enter image description here

你可以添加不同的文本樣式等與常規的matlab註釋的東西。您也可以使用sprintf命令自動添加您想要的羣集數量,如我在繪製8時顯示的那樣。

祝您好運。

+0

這似乎是我在圖像問題上使用的不同東西。看起來像繪製圖像的人沒有將它們放入圖像1中,而是使用一些功能,即文本。有類標籤,即0幾乎重疊,所以它看起來像Matlab自動把它們。 – kamaci

+0

@kamaci我不這麼認爲,我從來沒有見過這樣的功能,但它可能是一些自定義函數,包括'text',也可以通過使X和Y的位置靠近在一起來重疊數字。 –

+0

您可能是對的,我的意思是想要手工放置標籤的人可能不想放置重疊標籤。 – kamaci