第1个回答 2012-03-18
嘛,先示例一个最简单的代码:
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5}]
在以上代码的基础上增加一些花哨的东东,可以产生一些其它想要的效果。
例如想要显示坐标轴的名称,在参数的末尾、中括号的前面加上附加代码"AxesLabel -> {x, y, z}",其中x,y,z是您想要依次给坐标轴起的名字,比如我就喜欢把第3个坐标轴叫做youcike(有刺客),我们可以这样弄的说:
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5}, AxesLabel -> {x,y,youcike}]
可以看到前面的部分都不改变,只是在后面加了一点料。
下面这个参数是控制是否显示3D图像边框的(对于不同的参数,选项数目也不一样,一般软件会自动选择某一个预设值,除非有代码人为地加以限定):
Boxed -> True或者填False
如果是"Boxed ->False"就是说不希望它显示边框,比如您要是觉得边框什么的最恶心了,可以这么弄,看看效果如何:
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5},Boxed -> False]
类似的有个Axes开头的代码可以控制二维或三维绘图命令是否显示万恶的坐标轴(它不控制坐标轴是否显示名称,它只负责是否显示坐标轴本身):
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5},Axes ->False]
在2D绘图中(这次是2D不是3D,所以是Plot命名而不是前面总是在说的Plot3D),PlotRange参数也比较常用,它可以控制绘图的区域(可强行要求软件在指定平面区域上绘图,而不是任由软件自动选定绘图区域)。比如这样:
Plot[1/x, {x, -5, 5}, PlotRange -> {{-3, 3}, {-7, 15}}]
可以看到本来图像选定的x范围是(-5,5),但参数PlotRange既限定了y的绘图范围在(-7,15)之间,也强行更改x的绘图范围为(-3,3)。
Mathematica的帮助系统可以很方面地查找与任意一个函数有关的常用参数,以绘图的命令为例子,可以在帮助菜单的选择函数窗口里搜索函数名称,里面会给出诸如如何调整函数图象粗细、颜色等等各种丰富的示例。
不同的参数可以组合在一起使用,比如既不想显示框框,又不想显示坐标轴就可以这样整:
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5},Boxed -> False,Axes ->False]
也可以换个顺序这样弄:
Plot3D[x y/(x^2 + y^2), {x, -5, 5}, {y, -5, 5},Axes ->False,Boxed -> False]
如果记不住某个函数的名称,只记得开头的几个字母,可以先按顺序输入开头的字母(比如昨天在寝室里蹦跶的时候不小心挨了动感的室友一闷棍,现在只记得Plot命令是以Pl开头,那就先输入Pl),然后按组合快捷键"ctrl+k",可以快速查找需要的函数。
我在上面的东东里可能出现了不少空格,空格不要担心,这软件读取命令的时候会跳过空格,所以不关键的位置上有没有空格、有多少空格、有无空行都没有关系(所谓空格可以出现在不关键的位置就是说,如果加入空格的话,至少不应该把诸如"Boxed"这种完整的单词一分为二,只要不把完整的单词拆开,空格出现在哪里都OK)。
最好还是去图书馆或者网店里弄本教程系统自学一遍,没耐心看不完没关系,可以作为遗产流传给下一代(如果神童物理学家Wolfram的公司还没有倒闭的话...传说他最近沉迷于元胞自动机这类前沿领域不能自拔了,他自认为自己利用空余时间写的畅销书<一种新科学>可以算作是新世纪科学的突破性进展.Wolfram本人对学术以外的应酬、人员管理都不喜欢,当初组队开发Mathematica可能只是为了赚钱养活自己,以便在事业有成以后挤出更多精力捣鼓自己的奇葩理论,虽然传奇物理学家费曼当初认定他要是开办一家软件公司只会让自己进一步身陷管理层的痛苦之中)。
好吧,我累了,大家洗洗睡吧。