【matplotlib】線の太さ、色、点線[Python]

  • URLをコピーしました!
目次

線の太さを変更する

前回、折れ線グラフの全体の見栄えを調整する方法を解説しました。

今度は線自体を色々変更して、見やすいグラフにしてみましょう。

まずは前回のおさらいです。

%matplotlib notebook

from matplotlib import pyplot as plt

y1_value = [1, 2, 4, 8, 16, 32, 64, 128, 256, 1028]
x1_value = range(1, len(y_value)+1)

y2_value = [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]
x2_value = range(1, len(y2_value)+1)

fig=plt.figure(figsize=(10,6))

plt.plot(x1_value, y1_value, label="test1")
plt.plot(x2_value, y2_value, label="test2")

plt.title("Test Graph", {"fontsize": 20})
plt.xlabel("Numbers", {"fontsize": 20})
plt.ylabel("Value", {"fontsize": 20})
plt.tick_params(labelsize=20)
plt.legend(prop={"size": 20}, loc="best")
plt.grid()

plt.show()

実行結果

線の太さを変更するには、plt.plot()の中に、linewidth=Xを入れます。

linewidthは省略形で lw でも大丈夫です。

%matplotlib notebook

from matplotlib import pyplot as plt

y1_value = [1, 2, 4, 8, 16, 32, 64, 128, 256, 1028]
x1_value = range(1, len(y_value)+1)

y2_value = [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]
x2_value = range(1, len(y2_value)+1)

fig=plt.figure(figsize=(10,6))

plt.plot(x1_value, y1_value, linewidth=5, label="test1")
plt.plot(x2_value, y2_value, lw=10, label="test2")

plt.title("Test Graph", {"fontsize": 20})
plt.xlabel("Numbers", {"fontsize": 20})
plt.ylabel("Value", {"fontsize": 20})
plt.tick_params(labelsize=20)
plt.legend(prop={"size": 20}, loc="best")
plt.grid()

plt.show()

実行結果

linewidth=10ではかなり太くて見栄えが悪いですね。

とりあえず今回はこのままで次に行きましょう。

線の色を指定する

matplotlibで良いところは、複数の折れ線グラフを表示するとき、自動で結構良い感じの色を設定してくれるところです。

ですが、時には色を指定したい場合もあることでしょう。

その場合は、plt.plot()にcolor=”色”を入れます。

%matplotlib notebook

from matplotlib import pyplot as plt

y1_value = [1, 2, 4, 8, 16, 32, 64, 128, 256, 1028]
x1_value = range(1, len(y_value)+1)

y2_value = [100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]
x2_value = range(1, len(y2_value)+1)

fig=plt.figure(figsize=(10,6))

plt.plot(x1_value, y1_value, color="red", linewidth=5, label="test1")
plt.plot(x2_value, y2_value, color="blue", lw=10, label="test2")

plt.title("Test Graph", {"fontsize": 20})
plt.xlabel("Numbers", {"fontsize": 20})
plt.ylabel("Value", {"fontsize": 20})
plt.tick_params(labelsize=20)
plt.legend(prop={"size": 20}, loc="best")
plt.grid()

plt.show()

実行結果

色の指定方法は色の名前で指定する方法、色の名前の略語で指定する方法、カラーコードで指定する方法があります。

上の例では色の名前で指定しています。

色の名前で指定する方法と色の名前の略語で指定する方法はmatplotlibの公式サイトを見ると分かりやすいです。

カラーコードに関しては、調べると色々出てくるので、自分が使いやすいサイトを探してみてください。

ここではとりあえずWikipediaのウェブカラーのページへのリンクを紹介しておきます。

点線にしてみる

点線にするには、plt.plot()にlinestyel=”点線の種類”を入れます。

またlinestyleは 省略形の ls でも大丈夫です。

点線は3種類用意されていて、”–“(ハイフン2つ)、”-.”(ハイフンとピリオド)、”:”(コロン)で指定できます。

また”-“(ハイフン1つ)、もしくは指定がない場合は実線になります。

ここだけは見やすいようにデータを変えますね。

%matplotlib notebook

from matplotlib import pyplot as plt

x = range(1, 6)
y1 = [100, 100, 100, 100, 100]
y2 = [200, 200, 200, 200, 200]
y3 = [300, 300, 300, 300, 300]
y4 = [400, 400, 400, 400, 400]
y5 = [500, 500, 500, 500, 500]


fig=plt.figure(figsize=(10,6))

plt.plot(x, y1, linewidth=5, label="None")
plt.plot(x, y2, linewidth=5, linestyle="-", label="-")
plt.plot(x, y3, linewidth=5, linestyle="--", label="--")
plt.plot(x, y4, linewidth=5, ls="-.", label="-.")
plt.plot(x, y5, linewidth=5, ls=":", label=":")

plt.title("Line Style", {"fontsize": 15})
plt.legend(prop={"size": 20}, loc="best")
plt.grid()

plt.show()

実行結果

これでグラフを表示し、全体を調整し、線の調整ができるようになったことでしょう。

個人的には、色の指定が下手くそなので、色は自動にして、線の太さや点線表示でグラフを見やすくすることを心がけています。

次は棒グラフの作成方法を解説していきます。

ということで今回はこんな感じで。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次