簡體   English   中英

Matlab圖中帶有文本的垂直線

[英]Vertical lines with text in Matlab plot

我在 Matlab 中創建了一個圖。 為簡單起見,讓我們假設我有以下情節:

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)

現在我想在 x = 1、x = 3 和 x = 5 的位置添加垂直線(從圖的底部到頂部)。此外,垂直線應該有文本(在線旁邊或頂部)行)。 例如,對於 x = 1 處的行,我想要文本“test 1”。

如何才能做到這一點? 這在 Matlab 中似乎是一件非常棘手的事情。

for i=1:2:5

hold on 

plot([i i],[0 1])

s=sprintf('test%1.0f', i)

t=text(i,1,s)

set(t,'Rotation',90)

end

以下是一些繪制線條的方法:

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y,[1 1],[-1 1],[3 3],[-1 1],[5 5],[-1 1]);

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y); hold on;
for ind1 = 1:2:5
  line([ind1 ind1],[min(y) max(y)],'Color',[0 0 0]);
end

x = 0:pi/100:2*pi;
y = sin(x);
A = zeros(6); A(sub2ind(size(A),1:6,[2 1 4 3 6 5])) = 1;
plot(x,y); hold on; gplot(A, [repelem(1:2:5,1,2).', reshape(repelem([1 -1],3,1).',[],1)]);

等等。

要么在幾個命令中使用hold on和繪圖,要么立即為plot函數提供所有輸入以獲得所需的結果。 有關更多信息,請參閱上述函數的文檔。

對於文本,請參閱text

暫無
暫無

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

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