bainhome 发表于 2008-8-17 17:02:51

一种特殊的刻度和动态绘制坐标轴箭头

见某论坛曾有人提过此问题,采用的是x|yminortick选项打开的方法,但是DIY性质不足,而且只有一种方向选择,就是随着主刻度in或者out。这里我解决一下,采用自己定制的方式:%% 特殊的坐标轴刻度
clc;close all;
x=linspace(0,7);
y=sin(cos(x.^2));
plot(x,y)
tickx=get(gca,'xlim')
ticky=get(gca,'ylim')
hold on
for i=tickx(1):.1:tickx(end)
    plot(,,'color','k')
end
for j=ticky(1):.05:ticky(end)
    plot(,,'color','k')
end
Pos=get(gca,'position');
annotation('arrow',,,'linewidth',.7);
annotation('arrow',,);
data=;图形:


第二种利用latex中的tikz宏包:\begin{figure}[!htb]
\begin{center}
\begin{tikzpicture}
\draw[->] (0,0) -- (7.5,0) node {$x$};
\draw[->] (0,-1.2) -- (0,1.2) node {$y$};
\draw plot file {D:/2.txt};%将MATLAB得到的数据保存成2.txt,每个坐标值x、y之间空格即可
\foreach \x in{.1,.2,...,7}
\draw(\x,0)--++(0,.05);
\foreach \x in{1,2,...,7}
\draw(\x,0)--++(0,.1)node{\tiny{$\x$}};
\foreach \y in{-1.1,-1,...,1.1}
\draw(0,\y)--++(-.05,0);
\foreach \y in{-1,-.5,...,1}
\draw(0,\y)--++(-.1,0)node{\tiny{$\y$}};
\end{tikzpicture}
\caption{\tiny{\LaTeXe 中$pgf/tikz$宏包绘制的二维曲线图}}
\end{center}
\end{figure}图形:


必须说明:
1.方法1中的箭头还是有缺陷的,但是在MATLAB中,个人认为基本也只能如此,难以质变了,但是结合latex,图形就很风骚了。相比之下,好像一个是NBA的现场老美解说,一个是意识流之父韩乔生韩爷爷;一个是没化妆的小燕子,一个是《单车》里的高圆圆。看起来都是人,可天上地下啊:'(
2.请不要发贴问latex哪里下载——我家里穷,没有google,所以我拿锯子榔头铁锨自己做的:victory: ;请不要把代码2傻乎乎往MATLAB中copy,这不是一个软件的内容,如何使用具体请参考ctex中关于pgf宏包的说明。

[ 本帖最后由 bainhome 于 2008-8-17 20:02 编辑 ]

小星星 发表于 2017-7-20 15:08:03

不错,很有用!!!!!

zhongch2008 发表于 2017-12-2 22:14:05

学习一下方法
页: [1]
查看完整版本: 一种特殊的刻度和动态绘制坐标轴箭头