以前の記事で、Matplotlibのステップグラフ機能で、かっこいい図を作ってみました。 今回は、matplotlibのステム(茎)機能を使ってみました。

ステム機能でどのプロット点がどの関数によるものかはっきりさせる方法

それでは早速ソースコードです。1行1行解説を加えています。グラフを2つプロットしていますが、説明を省けば、10行以内に収まるくらい簡単ですよ:)
import matplotlib.pyplot as plt import numpy as np fig, ax = plt.subplots(1,1) #figureの中にaxesを用意。(1,1)は1行1列の意味 x = np.linspace(0.1, 2 * np.pi, 20) y1 = np.exp(np.sin(x)+1) + 1 y2 = np.exp(np.cos(x)+1) + 1 #plt.stem関数は、3つの要素からなる配列のようなもの。 #下のように、markerline,stemlines,baselineそれぞれに役割を与えると、 #markerline.set_color("blue")のように、各構成要素の細かい設定ができる #グラフ1 markerline, stemlines, baseline = plt.stem( x,y1,linefmt="blue",markerfmt="D",bottom=1.0,basefmt="black", use_line_collection=True) markerline.set_color("blue") markerline.set_markerfacecolor("none") markerline.set_markersize(8) #グラフ2 markerline, stemlines, baseline = plt.stem( x+0.15,y2,linefmt="red",markerfmt="o",bottom=1.0,basefmt="black", use_line_collection=True) markerline.set_color("red") markerline.set_markerfacecolor("none") markerline.set_markersize(10) plt.savefig("logo12.png") plt.show()
これを出力すると、以下の図になります。
logo12
綺麗な図が描けました:D

ステム機能とはなかなか良いネーミング

ステム(茎)機能とは良いネーミングセンスですよね。普通にグラフをプロットすると、「x軸と垂直にえんぴつをかざして...」とパソコンの前でプロット位置を確認する事が多々ありますが、この茎機能を使えば明確にプロット位置が分かりますね。


綺麗にできたので、この図もInstagramに投稿しようと思います:)