Вопрос

У меня есть этот сюжет

[Полное разрешение]

alt text

Мне нужно сделать прямо вертикальный строить в точке на оси x, что Пользователь входит а также Показать координаты пересечения этой вертикальной линии с моим сюжетом.

Как это можно сделать в Matlab?

Например: Пользователь входит в 1020, затем прямая вертикальная линия будет нарисована в 1020, которая в какой -то момент соответствует графику, и координаты этой точки будут каким -то образом показаны.

Это было полезно?

Решение

Один из способов сделать это - использовать Джинат Функция для графического выбора точки с использованием мыши. Предполагая, что нанесенные вами данные хранятся в переменной data, Следующий код должен делать то, что вы хотите.

set(gca,'XLimMode','manual','YLimMode','manual');  % Fix axes limits
hold on;
[x,y] = ginput(1);  % Select a point with the mouse
x = round(x);       % Round x to nearest integer value
y = data(x);        % Get y data of intersection
plot([x x],get(gca,'YLim'),'k--');  % Plot dashed line
plot(x,y,'r*');     % Mark intersection with red asterisk
disp('Intersection coordinates:');
disp([x y]);        % Display the intersection point

Вышеупомянутое предполагает, что x-значения графика являются просто индексами в массив данных, которые вы планируете, что, по-видимому, имеет место с графика, который вы показываете выше.

Другие советы

Попробуйте что -то вроде:

x = 1020;

% plot a vertical line
ylimits = get(gca, 'YLim');
hold on;
plot([x x], ylimits, 'k');

% mark the intersection with the plot
plot(x, data(x), 'ro');
annot = sprintf('Intersection: x=%f, y=%f', x, data(x));
text(x, data(x), annot);

Код не тестируется и предполагает, что ваша цифра является текущей, настроенные данные хранятся в массиве «данных» и что исходный график был выполнен без указания дополнительного X-вектора.

Вы также можете использовать функции hline а также vline, который можно скачать с: http://www.mathworks.com/matlabcentral/fileexchange/1039-hline-and-vline

Они делают практически то же самое для вас.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top