function test
clear
clc
x=0:0.1:100;
y=sin(0.1*x);
plot(x,y,'-k','linewidth',2);
% my_arrow 调用示例:
my_arrow(x(100),y(100),60,0.1,'m',[],':')
my_arrow(x(280),y(280),45,0.2,'cyan',2,'-')
my_arrow(x(380),y(380),-45,0.3,'k',3,'-')
my_arrow(x(330),y(330),135,0.15,[0.5,0.25,0.35],1.5,'-.')
my_arrow(x(630),y(630),[x(650)-x(630),y(650)-y(630)],0.2,'r',1)
my_arrow(x(730),y(730),-[x(735)-x(730),y(735)-y(730)],0.075,'b',1)
function [varargout] = my_arrow(x0,y0,varargin)
% 输入参数:
% 箭头位置: x0,y0, 方向:向量形式[x,y]或角度(与x轴夹角,单位:度),
% 箭头大小: 标量, 箭头颜色,如'r',[1,0,0], 箭头线粗, 箭头线型
if nargin < 2, error('至少两个参数!');end
% ----------- 箭头方向 -------------
xy_aspect=daspect./pbaspect; % 调整 x,y 比例, 使其看