Math 版 (精华区)
发信人: zjliu (fly), 信区: Math
标 题: Mathematica函数及使用方法<3> zz
发信站: 哈工大紫丁香 (Wed Jul 10 16:55:02 2002) , 转信
发信人: GzLi (苍鹰-文子), 信区: MathTools
标 题: Mathematica函数及使用方法<7> zz
发信站: 饮水思源 (2002年07月09日18:14:52 星期二), 站内信件
发信人: FangQ (奥萨马·本·拉登), 信区: MathTools
标 题: Mathematica函数及使用方法
发信站: BBS 水木清华站 (Sat Nov 28 20:14:58 1998)
Mathematica函数及使用方法
—————————————————————————————————————
十三、表函数
(*“表”,我认为是Mathematica中最灵活的一种数据类型 *)
(*实际上表就是表达式,表达式也就是表,所以下面list==expr *)
(*一个表中元素的位置可以用于一个表来表示 *)
表的生成
{e1,e2,...} 一个表,元素可以为任意表达式,无穷嵌套
Table[expr,{imax}] 生成一个表,共imax个元素
Table[expr,{i, imax}] 生成一个表,共imax个元素expr[i]
Table[expr,{i,imin,imax},{j,jmin,jmax},..] 多维表
Range[imax] 简单数表{1,2,..,imax}
Range[imin, imax, di] 以di为步长的数表
Array[f, n] 一维表,元素为f[i] (i从1到n)
Array[f,{n1,n2..}] 多维表,元素为f[i,j..] (各自从1到ni)
IdentityMatrix[n] n阶单位阵
DiagonalMatrix[list] 对角阵
元素操作
Part[expr, i]或expr[[i]]第i个元
expr[[-i]] 倒数第i个元
expr[[i,j,..]] 多维表的元
expr[[{i1,i2,..}] 返回由第i(n)的元素组成的子表
First[expr] 第一个元
Last[expr] 最后一个元
Head[expr] 函数头,等于expr[[0]]
Extract[expr, list] 取出由表list制定位置上expr的元素值
Take[list, n] 取出表list前n个元组成的表
Take[list,{m,n}] 取出表list从m到n的元素组成的表
Drop[list, n] 去掉表list前n个元剩下的表,其他参数同上
Rest[expr] 去掉表list第一个元剩下的表
Select[list, crit] 把crit作用到每一个list的元上,
为True的所有元组成的表
表的属性
Length[expr] expr第一曾元素的个数
Dimensions[expr] 表的维数返回{n1,n2..},expr为一个n1*n2...的
阵
TensorRank[expr] 秩
Depth[expr] expr最大深度
Level[expr,n] 给出expr中第n层子表达式的列表
Count[list, pattern] 满足模式的list中元的个数
MemberQ[list, form] list中是否有匹配form的元
FreeQ[expr, form] MemberQ的反函数
Position[expr, pattern] 表中匹配模式pattern的元素的位置列表
Cases[{e1,e2...},pattern]匹配模式pattern的所有元素ei的表
表的操作
Append[expr, elem] 返回 在表expr的最后追加elem元后的表
Prepend[expr, elem] 返回 在表expr的最前添加elem元后的表
Insert[list, elem, n] 在第n元前插入elem
Insert[expr,elem,{i,j,..}]在元素expr[[{i,j,..}]]前插入elem
Delete[expr, {i, j,..}] 删除元素expr[[{i,j,..}]]后剩下的表
DeleteCases[expr,pattern]删除匹配pattern的所有元后剩下的表
ReplacePart[expr,new,n] 将expr的第n元替换为new
Sort[list] 返回list按顺序排列的表
Reverse[expr] 把表expr倒过来
RotateLeft[expr, n] 把表expr循环左移n次
RotateRight[expr, n] 把表expr循环右移n次
Partition[list, n] 把list按每n各元为一个子表分割后再组成的大
表
Flatten[list] 抹平所有子表后得到的一维大表
Flatten[list,n] 抹平到第n层
Split[list] 把相同的元组成一个子表,再合成的大表
FlattenAt[list, n] 把list[[n]]处的子表抹平
Permutations[list] 由list的元素组成的所有全排列的列表
Order[expr1,expr2] 如果expr1在expr2之前返回1,如果expr1在
expr2之后返回-1,如果expr1与expr2全等返回0
Signature[list] 把list通过两两交换得到标准顺序所需的
交换次数(排列数)
以上函数均为仅返回所需表而不改变原表
AppendTo[list,elem] 相当于list=Append[list,elem];
PrependTo[list,elem] 相当于list=Prepend[list,elem];
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.115.11.198]
上一篇 返回上一页 回到目录 回到页首 下一篇
--
发信人: GzLi (苍鹰-文子), 信区: MathTools
标 题: Mathematica函数及使用方法<8> zz
发信站: 饮水思源 (2002年07月09日18:15:00 星期二), 站内信件
发信人: FangQ (奥萨马·本·拉登), 信区: MathTools
标 题: Mathematica函数及使用方法--绘图函数
发信站: BBS 水木清华站 (Sat Nov 28 21:50:37 1998)
Mathematica函数及使用方法--绘图函数
—————————————————————————————————————
十四、绘图函数
二维作图
Plot[f,{x,xmin,xmax}] 一维函数f[x]在区间[xmin,xmax]上的
函数曲线
Plot[{f1,f2..},{x,xmin,xmax}] 在一张图上画几条曲线
ListPlot[{y1,y2,..}] 绘出由离散点对(n,yn)组成的图
ListPlot[{{x1,y1},{x2,y2},..}] 绘出由离散点对(xn,yn)组成的图
ParametricPlot[{fx,fy},{t,tmin,tmax}] 由参数方程在参数变化范围内的
曲线
ParametricPlot[{{fx,fy},{gx,gy},...},{t,tmin,tmax}]
在一张图上画多条参数曲线
选项:
PlotRange->{0,1} 作图显示的值域范围
AspectRatio->1/GoldenRatio生成图形的纵横比
PlotLabel ->label 标题文字
Axes ->{False,True} 分别制定是否画x,y轴
AxesLabel->{xlabel,ylabel}x,y轴上的说明文字
Ticks->None,Automatic,fun用什么方式画轴的刻度
AxesOrigin ->{x,y} 坐标轴原点位置
AxesStyle->{{xstyle}, {ystyle}}设置轴线的线性颜色等属性
Frame ->True,False 是否画边框
FrameLabel ->{xmlabel,ymlabel,xplabel,yplabel}
边框四边上的文字
FrameTicks同Ticks 边框上是否画刻度
GridLines 同Ticks 图上是否画栅格线
FrameStyle ->{{xmstyle},{ymstyle}设置边框线的线性颜色等属性
ListPlot[data,PlotJoined->True] 把离散点按顺序连线
PlotSytle->{{style1},{style2},..}曲线的线性颜色等属性
PlotPoints->15 曲线取样点,越大越细致
三维作图
Plot3D[f,{x,xmin,xmax}, {y,ymin,ymax}]
二维函数f[x,y]的空间曲面
Plot3D[{f,s}, {x,xmin,xmax}, {y,ymin,ymax}]
同上,曲面的染色由s[x,y]值决定
ListPlot3D[array] 二维数据阵array的立体高度图
ListPlot3D[array,shades]同上,曲面的染色由shades[数据]值决定
ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax}]
二元数方程在参数变化范围内的曲线
ParametricPlot3D[{{fx,fy,fz},{gx,gy,gz},...},{t,tmin,tmax}]
多条空间参数曲线
选项:
ViewPoint ->{x,y,z} 三维视点,默认为{1.3,-2.4,2}
Boxed -> True,False 是否画三维长方体边框
BoxRatios->{sx,sy,sz} 三轴比例
BoxStyle 三维长方体边框线性颜色等属性
Lighting ->True 是否染色
LightSources->{s1,s2..} si为某一个光源si={{dx,dy,dz},color}
color为灯色,向dx,dy,dz方向照射
AmbientLight->颜色函数 慢散射光的光源
Mesh->True,False 是否画曲面上与x,y轴平行的截面的截线
MeshStyle 截线线性颜色等属性
MeshRange->{{xmin,xmax}, {ymin,ymax}}网格范围
ClipFill->Automatic,None,color,{bottom,top}
指定图形顶部、底部超界后所画的颜色
Shading ->False,True 是否染色
HiddenSurface->True,False 略去被遮住不显示部分的信息
等高线
ContourPlot[f,{x,xmin,xmax},{y,ymin,ymax}]
二维函数f[x,y]在指定区间上的等高线图
ListContourPlot[array] 根据二维数组array数值画等高线
选项:
Contours->n 画n条等高线
Contours->{z1,z2,..} 在zi处画等高线
ContourShading -> False 是否用深浅染色
ContourLines -> True 是否画等高线
ContourStyle -> {{style1},{style2},..}等高线线性颜色等属性
FrameTicks 同上
密度图
DensityPlot[f,{x,xmin,xmax},{y,ymin,ymax}]
二维函数f[x,y]在指定区间上的密度图
ListDensityPlot[array] 同上
图形显示
Show[graphics,options] 显示一组图形对象,options为选项设置
Show[g1,g2...] 在一个图上叠加显示一组图形对象
GraphicsArray[{g1,g2,...}]在一个图上分块显示一组图形对象
SelectionAnimate[notebook,t]把选中的notebook中的图画循环放映
选项:(此处选项适用于全部图形函数)
Background->颜色函数 指定绘图的背景颜色
RotateLabel -> True 竖着写文字
TextStyle 此后输出文字的字体,颜色大小等
ColorFunction->Hue等 把其作用于某点的函数值上决定某点的颜色
RenderAll->False 是否对遮挡部分也染色
MaxBend 曲线、曲面最大弯曲度
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.115.11.198]
上一篇 返回上一页 回到目录 回到页首 下一篇
发信人: GzLi (苍鹰-文子), 信区: MathTools
标 题: Mathematica函数及使用方法<9> zz
发信站: 饮水思源 (2002年07月09日18:17:34 星期二), 站内信件
发信人: FangQ (奥萨马·本·拉登), 信区: MathTools
标 题: Mathematica函数及使用方法--图元函数
发信站: BBS 水木清华站 (Sat Nov 28 21:50:59 1998)
Mathematica函数及使用方法--图元函数
—————————————————————————————————————
十四、绘图函数(续)
图元函数
Graphics[prim, options]
prim为下面各种函数组成的表,表示一个二维图形对象
Graphics3D[prim, options]
prim为下面各种函数组成的表,表示一个三维图形对象
SurfaceGraphics[array, shades]表示一个由array和shade决定的曲面对象
ContourGraphics[array]表示一个由array决定的等高线图对象
DensityGraphics[array]表示一个由array决定的密度图对象
以上定义图形对象,可以进行对变量赋值,合并显示等操作,也可以存盘
Point[p] p={x,y}或{x,y,z},在指定位置画点
Line[{p1,p2,..}]经由pi点连线
Rectangle[{xmin, ymin}, {xmax, ymax}] 画矩形
Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}]由对角线指定的长方体
Polygon[{p1,p2,..}] 封闭多边形
Circle[{x,y},r] 画圆
Circle[{x,y},{rx,ry}] 画椭圆,rx,ry为半长短轴
Circle[{x,y},r,{a1,a2}] 从角度a1~a2的圆弧
Disk[{x, y}, r] 填充的园、椭圆、圆弧等参数同上
Raster[array,ColorFunction->f] 颜色栅格
Text[expr,coords] 在坐标coords上输出表达式
PostScript["string"] 直接用PostScript图元语言写
Scaled[{x,y,..}] 返回点的坐标,且均大于0小于1
颜色函数(指定其后绘图的颜色)
GrayLevel[level] 灰度level为0~1间的实数
RGBColor[red, green, blue] RGB颜色,均为0~1间的实数
Hue[h, s, b] 亮度,饱和度等,均为0~1间的实数
CMYKColor[cyan, magenta, yellow, black] CMYK颜色
其他函数(指定其后绘图的方式)
Thickness[r] 设置线宽为r
PointSize[d] 设置绘点的大小
Dashing[{r1,r2,..}] 虚线一个单元的间隔长度
ImageSize->{x, y} 显示图形大小(像素为单位)
ImageResolution->r 图形解析度r个dpi
ImageMargins->{{left,right},{bottom,top}}四边的空白
ImageRotated->False 是否旋转90度显示
--
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.115.11.198]
上一篇 返回上一页 回到目录 回到页首 下一篇
--
※ 来源:.哈工大紫丁香 http://bbs.hit.edu.cn [FROM: 202.118.229.86]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:213.803毫秒