การเขียนโปรแกรมนั้นหลายครั้งเราจะต้องทำงานกับข้อมูลเชิงตัวเลขอยู่เสมอ เช่น การทำเว็บช้อปปิ้งออนไลน์ ก็จะต้องมีข้อมูลราคาของสินค้า, ยอดการสั่งซื้อ หรือจำนวนรายรับที่เข้ากระเป๋าของเรา และบางครั้งเราก็อยากที่จะนำตัวเลขเหล่านั้นมาลองพล็อทเป็นกราฟเพื่อดูแนวโน้ม หรือภาพรวมเพื่อนำไปวิเคราะห์อะไรบางอย่าง วันนี้เราเลยจะมานำเสนอการพล็อทกราฟด้วยภาษา Python ด้วยวิธีที่ง่ายมากๆ เพียงแค่ 1 บรรทัดก็สามารถพล็อทออกมาเป็นกราฟได้แล้ว
จุดเริ่มต้น
ขั้นแรกเราจะต้อง import เครื่องมือจาก matplotlib มาก่อน นั่นก็คือ pyplot โดยตั้งชื่อให้มันว่า plotG
import matplotlib.pyplot as plotG
แล้วเราจะมาลอง plot จุดๆเดียวกันก่อน ด้วยคำสั่งคือ
plotG.plot(4,8, 'x')
จากโค้ดด้านบนคือการพล็อทจุด x บนกราฟโดยตำแหน่งแกน x = 4, แกน y = 8 ก็จะได้กราฟดังภาพ
ก่อนจะมีกราฟก็ต้องมีข้อมูลก่อน
ต่อไปจะมาพล็อทกราฟเชิงเส้นกัน แต่ถ้าจะทำกราฟเราจะต้องมีข้อมูลกันก่อน โดยจะสมมุติตัวอย่างข้อมูลเป็นข้อมูลยอดการสั่งซื้อในเดือนเมษายน และเดือนพฤษภาคม
Data = {
'April': [111,531,58,421,256,90,147,500,40,150],
'May': [150,40,500,147,90,256,421,58,531,111]
}
ต่อไปก็จะนำข้อมูลมาแปลงเป็น dataframe เพื่อนำไปพล็อทกราฟโดยจะต้อง import เครื่องมือของ panda คือ DataFrame นั่นเอง
from pandas import DataFrame
dataF = DataFrame(Data,columns=['April','May'])
เมื่อลอง print ออกมาดูจะได้ข้อมูลมาเป็นตารางแบบนี้
print(dataF)
กราฟมาแล้ว!
เมื่อข้อมูลของเราพร้อมแล้ว ทีนี้ก็ถึงช่วงเวลาที่รอคอย เราจะมาพล็อทกราฟด้วยคำสั่ง
dataF.plot(kind="line")
ตอนนี้เราก็ได้กราฟจากข้อมูลสมใจแล้ว ด้วยคำสั่งเพียงบรรทัดเดียวเท่านั้น ซึ่งโค้ดที่ออกมาก็จะมีหน้าตาแบบนี้ ถ้าใครตามไม่ทันก็ลองเอาไปแปะรันได้เลย!
import matplotlib.pyplot as plotG
from pandas import DataFrame
Data = {'April': [111,531,58,421,256,90,147,500,40,150], 'May': [150,40,500,147,90,256,421,58,531,111] }
dataF = DataFrame(Data,columns=['April','May'])
dataF.plot(kind="line")
หรือนอกจากกราฟเชิงเส้นก็สามารถเปลี่ยนไปดูข้อมูลในเดือนพฤษภาคมด้วยกราฟแบบแท่งได้เช่นกัน
dataF["May"].plot(kind="hist")
นี่เป็นเพียงความสามารถเบื้องตนของ pyplot เท่านั้นนอกจากนี้ถ้าใครอยากได้กราฟแปลกๆ สวยๆสามารถไปศึกษาเพิ่มเติมได้เลยที่