Plots メモ †Plots について †Julia には様々な図の作成方法があるらしい. 下記リンクにあるように,(ほぼ)同じ文構造で図を作成できる. MATLAB や Python の matplotlib に近いので,これらに慣れていれば学習コストはあまり大きくならないかと. 図作成の基本 †Plots の図の書き方は原則2種類ある. using Plots を宣言して,scatter は plot(x, y, seriestype=scatter) # or scatter(x,y) contour は plot(X, Y, Z, seriestype=contour) # or contour(X,Y,Z) という感じ.バックエンドによってはできないスタイルもある. 体裁の整え方 †plot(; color=(:plasma), xlims=(0,1), ylims=(0,1), label="Line 1", title="Figure", xlabel="X-axis") のように plot のキーワード引数を使う方法と plot(...) xlims!(0,1) ylims!(0,1) または plt = plot(...) plt = plot!(plt, xlims=(0,1), ylims=(0,1)) のように後付けする方法がある. 線やマーカーの色の取得 †線やマーカで使う(:auto で決まる)色を予め取得する場合. c = palette(:auto) のようにする. マーカーの設定 †キーワード引数は marker (エイリアスの m や mark も可)で,設定が若干ややこしい. scatter!(plt, x, y; marker=(:magenta, 0.8, Plots.stroke(1, :green))) Attributes を参照.
複数の図を1枚に表示 †別々に作成した Plots.Plot 型の図を subplot のように使う. # pltA::T, pltB::T where T <: Plots.Plot を 2x1 (縦 x 横) に並べる plts = plot(pltA, pltB, layout=(2,1), size=(600,600)) 結合した図の大きさはキーワード引数 size を使って調整する. (GR) リモートサーバーでの出力エラー †ssh で入っているコンピュータに対して処理をしたい時に,表示できないというようなエラーが出てくる. ENV["GKSwstype"]="nul" または ENV["GKSwstype"]=100 とすると,エラー回避できる.
余白(margin)の設定 †キーワード引数 margin を使う. plt = plot(; margin=Plots.Measures.Length(:mm, 10.0)) # 10mm
plt = plot(; margin=10*Plots.PlotMeasures.mm) # 10mm |