Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?


Python มีไลบรารี่ต่างๆ ที่ใช้งานง่ายสำหรับการแสดงข้อมูล ข้อดีคือไลบรารีเหล่านี้ทำงานร่วมกับชุดข้อมูลขนาดเล็กหรือขนาดใหญ่ได้

ไลบรารี python ที่ใช้บ่อยที่สุดสำหรับการแสดงข้อมูลเป็นภาพ -

  • Matplotlib

  • หมีแพนด้า

  • พล็อตเรื่อง

  • ซีบอร์น

ด้านล่างนี้ เราจะพล็อตแผนภูมิการแสดงภาพประเภทต่างๆ สำหรับข้อมูลคงที่หนึ่งข้อมูลเพื่อวิเคราะห์ข้อมูลนั้นได้ดียิ่งขึ้น

เราจะวิเคราะห์ชุดข้อมูลด้านล่างเพื่อแสดงภาพผ่านแผนภูมิต่างๆ -

ประเทศหรือพื้นที่ ปี ตัวแปร ค่า
อินเดีย 2019 ปานกลาง
1368737.513
อินเดีย 2019 สูง 1378419.072
อินเดีย 2019 ต่ำ

1359043.965
อินเดีย 2019 ภาวะเจริญพันธุ์คงที่ 1373707.838
อินเดีย 2019 เปลี่ยนทันที 1366687.871
อินเดีย 2019 ไม่มีการย้ายข้อมูล 137068.782
อินเดีย 2019 การตายคงที่ 1366282.778
อินเดีย 2019 ไม่มีการเปลี่ยนแปลง

1371221.64
อินเดีย 2019 โมเมนตัม 1367400.614

โครงเรื่องพื้นฐาน

มาสร้างแผนภาพพื้นฐานกัน:แผนผังเส้น พล็อตแบบกระจาย และฮิสโตแกรม

แผนผัง

กราฟเส้นคือแผนภาพที่มีการลากเส้นเพื่อระบุความสัมพันธ์ระหว่างชุดค่า x และ y เฉพาะ

import matplotlib.pyplot as plt
Year = [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019]
India_Population = [1173108018,1189172906,1205073612,1220800359,1266344631,1309053980,1324171354,1339180127,1354051854,1368737513]
plt.plot(Year, India_Population)
plt.show()

ผลลัพธ์

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?

โครงแบบกระจาย

หรือคุณอาจต้องการพล็อตปริมาณที่มี 2 ตำแหน่งเป็นจุดข้อมูล

พิจารณาข้อมูลเดียวกันกับกราฟเส้น เพื่อสร้างแผนภาพกระจาย เราเพียงแค่แก้ไขหนึ่งบรรทัดในโค้ดด้านบน -

plt.plot(Year, India_Population,'o')

ผลลัพธ์

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?

ฮิสโตแกรม

ฮิสโตแกรมมักใช้ในแอปพลิเคชันทางวิทยาศาสตร์ และมีความเป็นไปได้สูงที่คุณจะต้องพล็อตมันในบางจุด มีประโยชน์มากในการวางแผนการแจกแจง

import pandas as pd
import matplotlib.pyplot as plt
data = [
['India', 2019, 'Medium', 1368737.513],
['India', 2019, 'High', 1378419.072],
['India', 2019, 'Low', 1359043.965],
['India', 2019, 'Constant fertility', 1373707.838],
['India', 2019,'Instant replacement', 1366687.871],
['India', 2019, 'Zero migration', 1370868.782],
['India', 2019,'Constant mortality', 1366282.778],
['India', 2019, 'No change', 1371221.64],
['India', 2019, 'Momentum', 1367400.614],]
df = pd.DataFrame(data, columns = ([ 'Country or Area', 'Year(s)', 'Variant', 'Value']))
df.hist()
plt.show()

ผลลัพธ์

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?

แผนภูมิวงกลม

import numpy as np
import matplotlib.pyplot as plt

n = 25
Z = np.ones(n)
Z[-1] *= 2.5

plt.axes([0.05, 0.05, 0.95, 0.95])
plt.pie(Z, explode = Z*.05, colors = ['%f' % (i/float(n)) for i in range(n)],
   wedgeprops = {"linewidth": 1, "edgecolor": "green"})
plt.gca().set_aspect('equal')
plt.xticks([]), plt.yticks([])
plt.show()

ผลลัพธ์

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?

พล็อตขั้ว

รหัส:

import numpy as np
import matplotlib.pyplot as plt

ax = plt.axes([0.5,0.05,0.95,0.95], polar=True)

N = 25
theta = np.arange(0.0, 2.5*np.pi, 2.5*np.pi/N)
radii = 10*np.random.rand(N)
width = np.pi/4*np.random.rand(N)
bars = plt.bar(theta, radii, width=width, bottom=0.0)

for r,bar in zip(radii, bars):
bar.set_facecolor( plt.cm.jet(r/10.))
bar.set_alpha(0.5)

ax.set_xticklabels([])
ax.set_yticklabels([])

plt.show()

ผลลัพธ์

การสร้างภาพข้อมูลด้วยแผนภูมิต่างๆใน Python?