Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでのグラフプロット


Pythonには、matplotlibライブラリを使用してグラフを作成する機能があります。さまざまなグラフやプロットを生成する多数のパッケージと関数があります。使い方もとても簡単です。 numpyや他のpython組み込み関数と一緒にそれは目標を達成します。この記事では、生成できるさまざまな種類のグラフをいくつか紹介します。

単純なグラフ

ここでは、数学関数を使用してグラフのx座標とY座標を生成します。次に、matplotlibを使用して、その関数のグラフをプロットします。ここでは、以下に示すように、ラベルを適用してグラフのタイトルを表示できます。三角関数-tanのグラフをプロットしています。

from matplotlib import pyplot as plt
import numpy as np
import math #needed for definition of pi
x = np.arange(0, math.pi*2, 0.05)
y = np.tan(x)
plt.plot(x,y)
plt.xlabel("angle")
plt.ylabel("Tan value")
plt.title('Tan wave')
plt.show()

出力

上記のコードを実行すると、次の結果が得られます-

Pythonでのグラフプロット

マルチプロット

複数の軸を作成してプログラムで使用することにより、1つのキャンバスに2つ以上のプロットを作成できます。

import matplotlib.pyplot as plt
import numpy as np
import math
x = np.arange(0, math.pi*2, 0.05)
fig=plt.figure()
axes1 = fig.add_axes([0.1, 0.1, 0.8, 0.8]) # main axes
axes2 = fig.add_axes([0.55, 0.55, 0.3, 0.3]) # inset axes
axes3 = fig.add_axes([0.2, 0.3, 0.2, 0.3]) # inset axes
axes1.plot(x, np.sin(x), 'b')
axes2.plot(x,np.cos(x),'r')
axes3.plot(x,np.tan(x),'g')
axes1.set_title('sine')
axes2.set_title("cosine")
axes3.set_title("tangent")
plt.show()

出力

上記のコードを実行すると、次の結果が得られます-

Pythonでのグラフプロット

サブプロットのグリッド

それぞれがサブプロットであるさまざまなグラフを含むグリッドを作成することもできます。このために、関数subplot2gridを使用します。ここでは、すべてのサブプロットがグリッドに収まるように、軸を慎重に選択する必要があります。 dtrailを少しヒットする必要があるかもしれません。

import matplotlib.pyplot as plt
a1 = plt.subplot2grid((3,3),(0,0),colspan = 2)
a2 = plt.subplot2grid((3,3),(0,2), rowspan = 3)
a3 = plt.subplot2grid((3,3),(1,0),rowspan = 2, colspan = 2)
import numpy as np
x = np.arange(1,10)
a2.plot(x, x*x,'r')
a2.set_title('square')
a1.plot(x, np.exp(x),'b')
a1.set_title('exp')
a3.plot(x, np.log(x),'g')
a3.set_title('log')
plt.tight_layout()
plt.show()

出力

上記のコードを実行すると、次の結果が得られます。

Pythonでのグラフプロット

等高線図

等高線図(レベルプロットと呼ばれることもあります)は、2次元平面上に3次元表面を表示する方法です。 2つの予測変数XYをy軸にグラフ化し、応答変数Zを等高線としてグラフ化します。Matplotlibには、等高線と等高線をそれぞれ描画するcontour()関数とcontourf()関数が含まれています。

import numpy as np
import matplotlib.pyplot as plt

xlist = np.linspace(-3.0, 3.0, 100)
ylist = np.linspace(-3.0, 3.0, 100)

X, Y = np.meshgrid(xlist, ylist)
Z = np.sqrt(X**2 + Y**2)

fig,ax=plt.subplots(1,1)
cp = ax.contourf(X, Y, Z)
fig.colorbar(cp) # Add a colorbar to a plot
ax.set_title('Filled Contours Plot')

#ax.set_xlabel('x (cm)')
ax.set_ylabel('y (cm)')
plt.show()

出力

上記のコードを実行すると、次の結果が得られます。

Pythonでのグラフプロット


  1. Pythonプロットを使用した地理的プロット

    Pythonには、地理データとグラフデータを処理するためのさまざまなライブラリが用意されています。 Python plotlyは、地理グラフを描画するために使用されるライブラリの1つです。 Plotlyは無料のオープンソースライブラリです。 Plotlyは、折れ線グラフ、横棒グラフ、棒グラフ、ダッシュボード、散布図、バブルグラフ、円グラフなど、さまざまな種類のグラフをプロットするのに役立ちます。 # Import important python geographical libraries. import plotly.plotly as py import plotly.graph_obj

  2. Pythonで太陽画像をプロットする

    Pythonでは、ソーラーイメージを作成するためのSunPyパッケージを提供しています。このパッケージには、さまざまな太陽観測所や太陽実験室からの陽子/電子フラックスの太陽データであるさまざまなファイルが含まれています。 pip install sunpyを使用する コマンド、sunpyパッケージをインストールできます。 ここでは、サンプルのAIA画像をプロットします。 AIAはAtmosphericImagingAssemblyです。これはSDOのもう1つの計器盤です。 ここでは、sunpy.Map()関数を使用して、サポートされているデータ製品の1つからマップを作成します。 サンプ