• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    用Mathematica繪制函數圖像——參數方程式

      這里,有盡善盡美的圖形,有死板乏味的代碼,這里說的是用Mathematica的ParametricPlot3D)、繪制參數方程的圖像的方式。

    東西/原料

    • 電腦
    • Mathematica

    方式/步調

    1. 1

        先來吸睛——一個半透明的綠貝殼:

      ParametricPlot3D[{1.16^v Cos[v] (1 + Cos[u]), -1.16^v Sin[v] (1 + Cos[u]), -2 1.16^v (1 + Sin[u])}, {u, 0, 2 Pi}, {v, -15,   6}, 

      Mesh -> None, PlotStyle -> {Opacity[0.6], Green}, PlotRange -> All, 

       PlotPoints -> 25, Boxed -> False, Axes -> False]

    2. 2

              另一條參數化的曲面:

      ParametricPlot3D[{Cos[u], Sin[u] + Cos[v], Sin[v]}, {u, 0,   2 \[Pi]}, {v, -\[Pi], \[Pi]}, Mesh -> None, Axes -> False, 

       Boxed -> False, PlotStyle -> {Opacity[1], Green}】

    3. 3

        繪制兩個套在一路的圓環,兩個圓環紅綠相間:

      ParametricPlot3D[{{4 + (3 + Cos[v]) Sin[u], 4 + (3 + Cos[v]) Cos[u], 

         4 + Sin[v]}, {8 + (3 + Cos[v]) Cos[u], 3 + Sin[v], 

         4 + (3 + Cos[v]) Sin[u]}}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, 

       PlotStyle -> {{Opacity[0.6], Red}, {Opacity[0.6】, Green}}, 

       Mesh -> None, Axes -> False, Boxed -> False】

        注重透明度是別離設置的!

    4. 4

        三個圓環套在一路,用分歧的顏色加以區分

      ParametricPlot3D[{{4 + (3 + Cos[v]) Sin[u], 4 + (3 + Cos[v]) Cos[u], 

         4 + Sin[v]}, {8 + (3 + Cos[v]) Cos[u], 3 + Sin[v], 

         4 + (3 + Cos[v]) Sin[u]}, {12 + (3 + Cos[v]) Sin[u], 

         4 + (3 + Cos[v]) Cos[u], 4 + Sin[v]}}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, 

       PlotStyle -> {{Opacity[0.5], Red}, {Opacity[0.5], 

          Green}, {Opacity[0.5], Blue}}]

        讀者可以本身思慮一下,若何畫出三個互相環繞糾纏的圓環

    5. 5

        繪制一個不透明的藍色球體,概況有平均的海浪條紋,還有白色的高光反射

      ParametricPlot3D[{Sin[u] Sin[v] + 0.05 Cos[20 v], 

        Cos[u] Sin[v] + 0.05 Cos[20 u], 

        Cos[v]}, {u, -\[Pi], \[Pi]}, {v, -\[Pi], \[Pi]}, MaxRecursion -> 4, 

       PlotStyle -> {Blue, Specularity[White, 10]}, Axes -> None, 

       Boxed -> False, Mesh -> None]

        高光反射,用Specularity節制

    6. 6

        畫貝殼的時辰,在轉變區域較快的區域,增添網格線的密度

      ParametricPlot3D[{1.16^v Cos[v/2] (1 + Cos[u]), -1.16^v Sin[

          v/2] (1 + Cos[u]), -2 1.16^v (1 + Sin[u])}, {u, 0, 

        2.6 Pi}, {v, -15, 6}, Mesh -> All, PlotRange -> All, Boxed -> False,

        Axes -> False, PlotStyle -> {Opacity[0.9], Pink}】

    7. 7

        繪制三維空間的曲線——單參數曲直線,雙參數曲直面

      ParametricPlot3D[{Cos[2 u], Sin[2 u], Sqrt[u] + Sin[5 u]/5}, {u, 0, 

        4 Pi}, Mesh -> All, PlotStyle -> {Pink}

    8. 8

        Mathematica會主動選擇繪圖的區域規模,以下面的“長號”為例

      ParametricPlot3D[{v Cos[u], v Sin[u], 1/Abs[v Exp[I u]]}, {u, 0, 

        2 Pi}, {v, 0, 1}, PlotStyle -> RGBColor[0, 0.7, 0.3], 

       Boxed -> False, Axes -> False】

        這里,坐標埋沒了。你可以把, Axes -> False刪失落,可以看到坐標系

    9. 9

        當曲面不持續的時辰,Mathematica會主動忽略失落無法顯示的部門:

      ParametricPlot3D[{u Cos[v], u Sin[v], Im[(u Exp[I v]^5)^(1/5)]}, {u, 

        0, 2}, {v, 0, 2 Pi}, Mesh -> None, ExclusionsStyle -》 {None, Red}]

    10. 10

        彈簧繞當作一個圈會是什么模樣呢?

      ParametricPlot3D[

       Evaluate[Table[{(2 + Cos[8 u + i】) Cos[u], (2 + Cos[8 u + i]) Sin[u],

           Sin[8 u + i]}, {i, {0, Pi}}]], {u, 0, 2 Pi}】

    11. 11

        給它起個名字叫“彈簧線圈”

      ParametricPlot3D[{(2 + Cos[8 u]) Cos[u], (2 + Cos[8 u]) Sin[u], 

        Sin[8 u]}, {u, 0, 2 Pi}, AxesLabel -> {x, y}, PlotLabel -> “彈簧線圈”]

    12. 12

        有兩種方式可以畫一個圓環。

        第一種方式是用RevolutionPlot3D扭轉一個圓獲得圓環,這里先忽略;

        第二種方式

      ParametricPlot3D[{(2 + Cos[v]) Cos[u], (2 + Cos[v]) Sin[u], 

        Sin[v]}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, AxesLabel -> {x, y},

       PlotLabel -> “圓環”]

    13. 13

        用ColorFunction把“線圈”和“圓環”畫當作彩色

      ParametricPlot3D[{(2 + Cos[v]) Cos[u], (2 + Cos[v]) Sin[u], 

        Sin[v]}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, Mesh -> 25, 

       ColorFunction -> Function[{x, y, z, u, v}, Hue[5 u v/(2 Pi)]], 

       ColorFunctionScaling -> False]

        和

      ParametricPlot3D[{(2 + Cos[8 u]) Cos[u], (2 + Cos[8 u]) Sin[u], 

        Sin[8 u]}, {u, 0, 2 Pi}, PlotStyle -> Thick, 

       ColorFunction -> Function[{x, y, z, u}, Hue[5 u/(2 Pi)]], 

       ColorFunctionScaling -> False]

    14. 14

        上面的動態圖片如下。

    15. 15

        先到這里吧!

    注重事項

    • 當繪制多個圖形的時辰,各項參數要分隔設置。
    • 高光反射,用Specularity節制。
    • 在轉變區域較快的區域,可以恰當地增添網格線的密度。
    • 把“, Axes -> False”刪失落,可以看到坐標系。
    • 當曲面不持續的時辰,Mathematica會主動忽略失落無法顯示的部門。
    • 讀者可以本身思慮一下,若何畫出三個互相環繞糾纏的圓環?
    • 還可以用RevolutionPlot3D扭轉一個圓獲得圓環。
    • 發表于 2018-08-03 00:00
    • 閱讀 ( 2866 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆