mathematica trivial
绘图
Plot 普通绘图PolarPlot 极坐标绘图ParametricPlot 参数绘图CoutourPlot 隐函数绘图Plot3DDensityPlotRegionPlot 用不等式表示BarChart处理list 画出直方图barPieChart处理list, 画出饼图VectorPlot提供x,y方向的导数ArrayPlot画出矩形图ParametricPlot3d两种用法, 一种直接参数, 另一种是以矩阵形式给出多个曲面参数, 然后得出相交线.ContourPlot3d
要将多个图形画在一起, 可以分别赋值后, 用Show一起画出
plot中可以带入Table, 前面用Evaluate框起来就可以, 内部如果是函数的情况下, 需要加上EvaluateSphericalPlot3D是球面坐标绘图, 双参数RevolutionPlot3D旋转绘图, 默认是0XZ轴, 直接给出平面函数即可, 也可以参数绘图, 双参默认是x,z,三参默认是x,y,zRegionPlot3D不等式绘图, 之前双参, 这次三参VectorPlot3D同样需要提供三个方向的导数Scale投影函数, 对Scale投影的一个固定调用格式如下
Show[%, PlotRange -> All] /.
Graphics3D[gtr_, opts_] :>
Graphics3D[{gtr,
Scale[gtr, #, {-1, -1, -1}] & /@ (1 + 10^-3 - IdentityMatrix[3])},
opts]
双Graphics3D函数
双曲面交面
如, 要求$z1=3-2x^{2}-y{2}$, $z_2=x^{2}+2y^{2}$相交面, 可以先转换成柱面坐标, 把x,y分解为r,$\theta$, 然后相交
z1 = 3 - 2 x^2 - y^2;
z2 = x^2 + 2 y^2;
x = r*Cos[\[Theta]];
y = r*Sin[\[Theta]];
ParametricPlot3D[{{x, y, z1}, {x, y, z2}}, {\[Theta], 0, 2*Pi}, {r, 0,
1}]

Scale投影
对上面的图形进行投影, 就有如下
Show[%, PlotRange -> All] /.
Graphics3D[gtr_, opts_] :>
Graphics3D[{gtr,
Scale[gtr, #, {-1, -1, -1}] & /@ (1 + 10^-3 - IdentityMatrix[3])},
opts]

莫比乌斯曲线
r[t_, v_] := 2 + 0.5*v*Cos[t/2];
x[t_, v_] := r[t, v]*Cos[t];
y[t_, v_] := r[t, v]*Sin[t];
z[t_, v_] := 0.5*v*Sin[t/2];
ParametricPlot3D[{x[t, v], y[t, v], z[t, v]}, {t, 0, 2*Pi}, {v, -1,
1}]

螺管线
ParametricPlot3D[{(6 + 2*Cos[u])*Cos[v], (6 + 2*Cos[u])*Sin[v],
2*(Sin[u] + v)}, {u, 0, 2*Pi}, {v, 0, 3*Pi}]

图形元素绘图
Graphics与Graphics3D相配合, 来画出
Point 点
Line 线
Circle 非填充圆
Rectangle 矩形
Disk 填充圆
Polygon 多边形
Text 字
切线束
一个比较有趣的graphics应用就是切线束
f[x_] := x^2;
p = Table[{{a - 2, f'[a]*((a - 2) - a) + f[a]}, {a + 2,
f'[a]*((a + 2) - a) + f[a]}}, {a, -10, 10, 0.1}];
Graphics[Line[p], PlotRange -> {{-1, 1}, {-1, 1}}]

Line内可以是切线束, 这里利用某点处的切线在前后2距离的交点来确定直线, 就可以完成切线束
图形颜色
Hue 色度, 饱和度, 亮度
RGBColor 红绿蓝
GrayLevel
PointSize
Dashing
参数
PlotRangeAspectRatioPlotStylePlotPointsAxesAxesLabelTicksThickness[t]GrayLevel[t]BoxedPlotLabelBoxRatioMesh
小函数
FloorSignWhich 相当于switch, 用来作分段函数
f[x_] := x^2Sin[1/x]N[]Mod
表
Take前n个元素FirstLastDropPrependAppendInsertLengthMemberQCount
矩阵
IdentityMatrix[n]单位矩阵DiagonalMatrix[表] 对角矩阵ColumnForm[矢量]矢量变为列MatrixForm[矩阵]矩阵输出Inverse[矩阵]Det[]Eigenvalues[]Eigenvectors[]
方程
Solve[eqns,vars]NSolve[eqns,vars]NDSolve[eqns,vars]NDSolve[eqns,y,{x,xmin,xmax}]FindRoot[eqns,{x,x0},{y,y0}..]Eliminate[eqns,elims]
