显示功能值的行

时间:2016-12-10 20:57:48

标签: matlab plot

我有一个日志图,经过计算后得到2-3 x值。我想标记x值并在函数中画一条线并在y轴上绘制一条线,如下所示:

enter image description here

此外,我想将x-Value添加到绘制直线的x轴。 我该怎么做?

1 个答案:

答案 0 :(得分:1)

假设您的数据是:

% example data
x = [1e0,  1e1,  1e2, 1e3, 1e4,  1e5 ]; 
y = [1e15, 1e10, 1e6, 1e2, 1e-2, 1e-5]; 

你有一个情节

loglog(x,y); 
grid on; 

您可以使用

在顶部手动添加更多地块
hold on;                                             

使用xlim和`ylim'

查找绘图轴的限制
YBottom = ylim;  YBottom = YBottom(1);
XLeft   = xlim;  XLeft   = XLeft(1);      

使用line功能手动绘制所需的线条。例如。第三点:

line([x(3),  x(3)], [YBottom, y(3)], 'color', 'r', 'linewidth', 5); % vertical
line([XLeft, x(3)], [y(3),    y(3)], 'color', 'r', 'linewidth', 5); % horizontal

您还可以使用text功能在地块上的任何位置添加注释 例如。在打印坐标本身的点添加注释:

text(x(3), y(3), sprintf('(%d,%d)', x(3), y(3)));