关键词不能为空

当前您在: 主页 > 英语 >

如何在论文中画出漂亮的插图

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-28 21:07
tags:

-

2021年2月28日发(作者:steam是什么)


如何在论文中画出漂亮的插图?





很多人似乎觉得



latex


的画图代码量很大,是的,我这里贴的这些图的代 码量确实很大,


但是,


你要和其它画图方式相比较的话,


总得找一样的例子吧,


下面我给一个很简单的例子

来比较一下用


latex




pgfplots


画图和用



python




matplotlib


来画图的代码。




首先是



matplotlib


的。





import numpy as npimport as pltx = ce(0,


10)line,


=


(x,


(x),


'--',


linewidth=2)dashes


=


[10,


5,


100,


5]


#


10


points


on,


5


off,


100


on,


5


_dashes(dashes)()




接着是



pgfplots


的。




documentclass{article}usepa ckage{pgfplots}begin{document}begin{ti


k zpicture}begin{axis}addplot [dash pattern=on 10 off 5 on 100 off 5,


domain=0:10, samples=100, very thick, blue]


{sin(deg (x))};end{axis}end{tikzpicture}end{document}




看,代码量没什么太大差距吧。



< /p>


其实,


除了代码量以外还有一个很重要的问题需要考虑,


就是学习曲线。


是的,


在这个

< br>


latex


的学习曲线很陡峭已经几乎被公认的年代 里,


我居然会说我们可以来比一下学习曲线。


latex


的这个



pgfplots


真的很难学吗?下面我们来看一下上面给的这两段代码吧,


我想说的其实


是,


latex


的这段画图代码对于 初学者来说,


可读性会比



python


更好



因为你不用看文


档就能够大致猜到



latex


代码的含义。




我们一行一行地看看绘图有关的代码。




先来看看



latex


的。



begin{tikzpicture}




虽然



tikz


不知道是什么意思,


但是



begin




picture


我知道,


所以我猜这 是要开始画图


了。



begin{axis}





axis


的意思是坐标轴,恩,我猜这是要画坐标轴。



addplot [dash pattern=on 10pt off 5pt on 100pt off 5pt, domain=0:10,


samples=100, very thick] {sin(deg(x))};





plot


,这个词我在韦伯词典里查到它的意思是:

< p>
3 a:


to locate (a point) by means of


coordinates


b:


to locate (a curve) by plotted points


c:


to represent (an equation)


by means of a curve so constructed


。所以理解应该没难度吧。




dash pattern



明显是要指定虚线样式的节奏,


后面跟了个



on 10pt off 5pt on 100pt off


5pt



on



off


是什么?好像虚线就是画一段空一段嘛,所以大概这个


o n


就表示画一段


的意思,


off


就表示空一段的意思,那么后面的数字应该就是这一段的长度了。




domain=0:10



这似乎表示某个域的大小,


一般来说,


如果我们 要画的是一条由某个函数


表示的曲线的话,很可能需要关心的域是


x


的域。




samples=100


,任何一条曲线在画的时候,实际上都是需要采样

< p>


(sample)


的,那么这


里的意思很可能就应该是采样点数量的意思。




very thick


,很粗?是的,这就是表示粗细,是什么 东西的粗细呢?你画曲线的时候最关心


的是什么东西的粗细?我相信是曲线本身吧。而且 ,回过去看看这一行开头写的是



addplot


,所以应该也能猜到这里需要描述的对象是曲线。




blue


,很显然,就是画成蓝色的意思。



最后再看



sin(deg(x))



sin


大家都知道是什么意思,


deg


似乎要想一下,



...degree



家都很常用吧,所以这里的意思似乎就是把

< br>x


转换成角度的意思,所以,这个图的横坐标


应该表示的 是弧度。




然后是两个



end


,意思应该也很容易猜到。




现在我们来看



python


的代码,请注意,假设你是一个不会写代码的人。



x = ce(0, 10)




我知道



x


可能是曲线方程的自变量,


但是



np


是个啥?下面加个点是什么意思?


linspace


可能是



line space


的意思,但是



line space


是什么意思?大概是线的绘制空间吧。


你觉



pgfplots


里用的关键字



domain


和这里的



linspace


,哪个更容易被理解成



x


的取


值范围?



line, = (x, (x), '--', linewidth=2)




我们不说



line


后面那个逗号和等号。



,似乎就是要画个什么曲线图的 意思(主要




plot


可以看懂)。后面的



x


,我大概能理解,因为上面说



x


等于某个



linspace


,所


以这里大概也是值


linspace



(x)



不管



np


是什么意思吧,


sin(x)


还是能理解的。


然后,你说



'--'


是什么意思?


linewi dth=2


,这个很好理解,应该是线的宽度。不过我不


知道< /p>


2


到底是有多宽,比方说它和坐标轴的粗细比,哪个宽?很多时候 我们需要画出来看


看才行。


latex


里用的是



very thick


这 样的词,所以我们会猜到它是比一般的线要粗很多


的。



dashes = [10, 5, 100, 5] # 10 points on, 5 off, 100 on, 5 off




dashes


是虚线的意思。


但是后 面中括号里的东西就比较难理解了,


如果没有


#


后面的注释


的话。再者,你看


#


后面的这段注释,是不是感觉和


latex


里的代码很像?所 以哪段代码更


容易理解应该很显然了吧。而且,如果不看这段注释,你知道第一个



10


表示的



on


还是



off


吗?




以上。




/******


下面是原来的答案


** ****/



受不鸟了,居然几乎木有


latex


的图,我来贴。下面所有的图都来自



,每


张图下面都有源码所在的页面地址。




首先是和问题中给的图比较接近的点阵图





Drawing lattice points and vectors



经典的函数曲线, 不管是离散点还是直接用


function




Pgfplots | TikZ example




Animated definite integral



三维的




Spherical and cartesian grids




Membrane- like surface



网络结构也没问题




Scientific interactions



经典物理力学



-


-


-


-


-


-


-


-



本文更新与2021-02-28 21:07,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/683868.html

如何在论文中画出漂亮的插图的相关文章