Как добавить аннотацию «указатель» к трехмерному графику в MATLAB? - PullRequest
1 голос
/ 16 сентября 2010

Я хочу добавить «Указатель» к трехмерному графику.
Я хочу, чтобы этот «указатель» указывал на определенное место на сфере, которую я нарисовал.
Этот указатель не долженесть стрелка, но было бы неплохо, если бы это было.

Спасибо за любую помощь!

Ответы [ 3 ]

3 голосов
/ 16 сентября 2010

Также обязательно ознакомьтесь с превосходной СТРЕЛКОЙ на FEX Эриком Джонсоном (датируется 2000 годом, но обновлен в 2009 году).

скриншот http://www.mathworks.com/matlabcentral/fx_files/278/3/arrow_demo.png

3 голосов
/ 16 сентября 2010

Обычная копия из документации MathWorks. Для получения более подробной информации посмотрите на это .

% Create a sphere and color it using a topographic colormap:
cla reset;
load topo;
[x y z] = sphere(45);
s = surface(x,y,z,'FaceColor','texturemap','CData',topo);
colormap(topomap1);
% Brighten the colormap for better annotation visibility:
brighten(.6)
% Create and arrange the camera and lighting for better visibility:
campos([2 13 10]);
camlight;
lighting gouraud;
axis off vis3d;
% Set the x- and y-coordinates of the textarrow object:
x = [0.7698 0.5851];
y = [0.3593 0.5492];
% Create the textarrow object: 
txtar =  annotation('textarrow',x,y,'String','We are here.','FontSize',14);
2 голосов
/ 16 сентября 2010

И простой способ добавить стрелки и тому подобное - использовать инструменты печати.Вы можете активировать инструменты печати, нажав на самый правый значок на панели инструментов в окне, содержащем нарисованную вами фигуру.Если у вас есть стрелка, как вы хотите, вы можете сгенерировать m-файл из графики.

...