【入門】Juliaの波形表示方法【数値計算】

【入門】Juliaの波形表示方法【数値計算】 数値計算
【入門】Juliaの波形表示方法【数値計算】

MATLAB、Python、Scilab、Julia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/

はじめに

MATLAB,Python,Scilab,Julia比較 その42【波形表示方法④】
を書き直したもの。

Juliaによる波形表示方法について記載する。

PlotsとPyPlot

波形表示用のパッケージとしてはPlotsとPyPlotがある。
PyPlotはpythonでおなじみのmatpotlibをベースとしたもの。
Juliaの文化としてPlots推奨などがあるかもしれないが、
matpotlib仕様の方が他の環境、言語と合わせやすいのでPyPlotを使用する。

波形表示

PyPlot自体がmatpotlibをベースにしていることもあるが、
使用方法はかなりMATLABに寄せている状態。
ただし、描画パラメータ指定の一括指定はできない。
よって、linestyle、color、markerに分けて指定する。

> using LinearAlgebra
> using PyPlot
> x=range(0,2*pi,length=200)
> plot(x,sin.(x),linestyle="--", color="r", marker="")
> plot(x,cos.(x),linestyle="-.", color="b", marker="")
julia_wave、plot

他のツール、言語ではx軸の作成をlinspaceで行っていたが、
Juliaではrangeを使用する。
以前はJuliaもlinspace関数は存在したようだが、rangeに置き換わっている。

sin関数を使うには、LinearAlgebraのパッケージが必要になる。
そして、sin関数にベクトルを渡す際は関数名の後ろに「.」を付けてsin.(x)とする必要がある。
「関数をベクトル化するDot構文」と呼ばれてる機能で、
暗黙的に呼び出す関数を非ベクトル版、ベクトル版に分けていると推測される。

波形表示(複数グラフ)

完全にMATLABの仕様に寄せている。

> using LinearAlgebra
> using PyPlot
> x=range(0,2*pi,length=200)
> subplot(2,3,1)
> plot(x,sin.(x),linestyle="--", color="r", marker="")
> subplot(2,3,2)
> plot(x,cos.(x),linestyle="-.", color="b", marker="")
> subplot(2,3,3)
> plot(x,sin.(x),linestyle="--", color="r", marker="")
> subplot(2,3,4)
> plot(x,cos.(x),linestyle="-.", color="b", marker="")
> subplot(2,3,5)
> plot(x,sin.(x),linestyle="--", color="r", marker="")
> subplot(2,3,6)
> plot(x,cos.(x),linestyle="-.", color="b", marker="")
Julia PyPlots複数グラフ、subplot、plot

ラインスタイル

こちらもMATLABと同一。

指定子線種
‘-‘実線 (既定の設定)
‘–‘破線
‘:’点線
‘-.’一点鎖線

色指定

こちらもMATLABと同一。

指定子
b青 (Blue)
g緑 (Green)
r赤 (Red)
cシアン (Cyan)
mマゼンタ (Magenta)
y黄 (Yellow)
k黒 (Black)
w白 (White)

マーカー指定

マーカー関してはmatplotlib側に合わせている。

指定子マーカタイプ
“.”
“,”四角形
“o”
“v”下向き三角形
“^”上向き三角形
“<“左向き三角形
“>”右向き三角形
“1”Y 字
“2”Y 字 (上下反転)
“3”Y 字 (90 度時計回り)
“4”Y 字 (90 度反時計回り)
“8”八角形
“s”四角形
“p”五角形
“*”星印
“h”六角形 (縦長)
“H”六角形 (横長)
“+”プラス (+) 印
“x”バツ (×) 印
“D”菱形 (ダイヤモンド)
“d”細い菱形 (ダイヤモンド)
“|”縦線
“_”横線
“None”マーカーなし
” “マーカーなし
“”マーカーなし

まとめ

  • JuliaはPlotsかPyPlotで波形表示。
    • PyPlotはmatplotlibのラッパーらしく、使い勝手が他の環境と似ている。
  • PyPlotの描画パラメータは個別に指定する必要あり。
  • 基本的にはMATLABに寄せている。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました