我在Matlab中创建了一个情节。为简单起见,我假设我有以下情节:
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
现在我想在x = 1,x = 3和x = 5的位置添加垂直线(从图的底部到顶部)。此外,垂直线应该有文字(在线旁边)或在线上)。例如,对于x = 1的行,我想要文本" test 1"。
如何做到这一点?这在Matlab中似乎是一件非常棘手的事情。
答案 0 :(得分:1)
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
答案 1 :(得分:1)
以下是绘制线条的一些方法:
FotoApparat
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
函数提供所有输入以获得所需结果。有关更多信息,请参阅上述功能的文档。
有关文字,请参阅text
。