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

ทวีคูณ

เราสามารถมีแผนผังได้ตั้งแต่ 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 ที่นี่เราต้องเลือกแกนอย่างระมัดระวังเพื่อให้แผนย่อยทั้งหมดพอดีกับกริด อาจจำเป็นต้องมีการตีเล็กน้อย

ตัวอย่าง

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

โครงเรื่อง

แผนภาพแสดงรูปร่าง (บางครั้งเรียกว่า แผนภาพระดับ) เป็นวิธีการแสดงพื้นผิวสามมิติบนระนาบสองมิติ มันสร้างกราฟตัวแปรทำนายสองตัว XY บนแกน y และตัวแปรตอบสนอง Z เป็น contours.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