さっぽろの陰者

ブログというものを始めてみる陰キャ。趣味を垂れ流すだけ

mathematicaのplotの基礎

20190720061303

mathematicaのきれいなplotの書き方をご紹介します。
論文用にどうぞ

 




mathematica便利ですよね~
計算からグラフの描画まで簡単にやってくれます。

本日はplotのきれいな書き方のテンプレートをご紹介します。

作成した2つのリストを同じ一つのグラフに描画して、ファイル出力できます

以下のものをmathematicaで実行してみてください。

list1 = Table[Sin[2.0 Pi x /100], {x, 0, 100}];
list2 = Table[Sin[4.0 Pi x /100] + RandomReal[1], {x, 0, 100}];

Figure = ListPlot[{list1, list2}, 
  PlotRange -> {{0, 100}, {-1.1, 2.0}}, DataRange -> {0, 50}, 
  LabelStyle -> Black, FrameStyle -> AbsoluteThickness[0.5], 
  AxesStyle -> {AbsoluteThickness[0.5], Black}, 
  FrameTicksStyle -> 
   Directive[AbsoluteThickness[1], FontFamily -> "Helvetica", 
    FontSize -> 20], 
  PlotStyle -> {Directive[AbsoluteThickness[4], 
     ColorData[97, "ColorList"][[3]]], 
    Directive[Dashing[{0.005, 0.03}], AbsoluteThickness[5], 
     ColorData[97, "ColorList"][[9]]], 
    Directive[AbsoluteThickness[5], 
     ColorData[97, "ColorList"][[11]]]}, Joined -> {True, True}, 
  Frame -> True, 
  PlotLegends -> 
   Placed[LineLegend[{Style["Sin1", 20, FontFamily -> "Helvetica"], 
      Style["Sin2", 20, FontFamily -> "Helvetica"], 
      Style["Approximated", 20, FontFamily -> "Helvetica"]}, 
     LegendLayout -> "Row"], {0.5, 0.9}, Framed], 
  FrameLabel -> {Style["Time [ms]", 28, FontFamily -> "Helvetica"], 
    Style["Signal magnitude", 28, FontFamily -> "Helvetica"]}, 
  ImageSize -> 600
]

Export["C:\\Users\\ユーザ名\\Desktop\\graph.pdf", Figure];


RandomReal[n]は、0~nまでの実数乱数を出します。

PlotRangeはプロットの範囲で、DataRangeはデータ全体の大きさを決めます。
今回は、list1, 2は100データまでありますが、DataRangeで50に縮小されているということですね。
それをPlotRangeで100まで描画しています。すると51以降はデータがないので描画されません。
今回は練習のためにこうしていますが、全部表示したければALLでOKです!

スタイルについては、他にもあるのでこれを参考にいろいろ試してください~

最後にExportでファイルが出力されます。ユーザ名のところはご自分のものを書いてください。


実際にmathematicaで実行するとこんな感じです!!
20190720061259