เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การพล็อตหลาย layer

ฟังก์ชันที่มีประโยชน์อีกอย่างหนึ่งของ pandas คือการกรอง dataframe ซึ่งเป็นการเลือกเฉพาะแถวที่ตรงตามเงื่อนไขที่กำหนด (โดยสร้าง boolean mask)

ในแบบฝึกหัดนี้ เราจะเลือกเฉพาะร้านอาหารแอฟริกัน แล้วสร้าง plot แบบหลาย layer กล่าวคือ การนำ GeoDataFrame หลายชุดมาแสดงผลบน figure เดียวกัน หากต้องการเพิ่ม layer ให้ใช้ keyword ax ของเมธอด plot() ของ GeoDataFrame เพื่อส่งผ่าน matplotlib axes object

ข้อมูลร้านอาหารถูกโหลดเป็น GeoDataFrame ชื่อ restaurants แล้ว GeoPandas ถูก import ในชื่อ geopandas และ matplotlib.pyplot ในชื่อ plt

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การทำงานกับข้อมูลเชิงพื้นที่ใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เลือกแถวทั้งหมดที่ type เป็น 'African restaurant' แล้วเก็บไว้ในตัวแปรชื่อ african_restaurants
  • พล็อตร้านอาหารทั้งหมดโดยกำหนดสีเป็นสีเทาสม่ำเสมอ อย่าลืมส่ง matplotlib axes object ให้กับเมธอด plot()
  • เพิ่ม layer ที่สองโดยแสดงเฉพาะร้านอาหารแอฟริกันด้วยสีแดง สำหรับสีที่ใช้บ่อย สามารถระบุเป็นชื่อภาษาอังกฤษได้เลย เช่น 'red' และ 'grey'
  • ลบกรอบออกโดยใช้เมธอด set_axis_off() บน matplotlib axes object

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Load the restaurants dataset
restaurants = geopandas.read_file("paris_restaurants.geosjon")

# Take a subset of the African restaurants
african_restaurants = ____

# Make a multi-layered plot
fig, ax = plt.subplots(figsize=(10, 10))
restaurants.____
african_restaurants.____
# Remove the box, ticks and labels
ax.____
plt.show()
แก้ไขและรันโค้ด