python – แปลงข้อมูลจากแผนที่จาก shapefile(.shp) ให้เป็นรูปแบบ GeoJSON
พอดีอยากได้ข้อมูลรายละเอียดแผนที่ขอบเขตของแต่ละจังหวัดในประเทศไทยและต้องการข้อมูลที่เก็บข้อมูลอยู่ในรูปแบบ GeoJSON(ไฟล์ .geojson) ที่แสดงขอบเขตของแต่ละจังหวัดของประเทศไทย เพื่อให้สามารถเอาข้อมูลนี้ไปแสดงผลร่วมกับไลบรารี่ leaflet ในการแสดงแผนที่ในรูปแบบ choropleth(แผนที่ซึ่งในแต่ละขอบเขตตามจังหวัดมีการลงสีหรือแรเงาให้แต่ละพื้นที่ตามข้อมูลตัวเลขเชิงปริมาณ ตัวอย่างเช่น จำนวน, ความหนาแน่น หรือข้อมูลอื่นๆ โดยสีที่แสดงในแต่ละขอบเขตของแต่ละจังหวัดนั้นจะแสดงตัวเลขเชิงปริมาณที่แตกต่างกันในแต่ละขอบเขตอีกทีหนึ่ง) ตัวอย่างการใช้งานแผนที่แบบ choropleth ของไลบรารี่ leaflet ลองค้นข้อมูลที่เป็นข้อมูลแผนที่แสดงขอบเขตของแต่ละจังหวัดของประเทศไทย ก็ไปเจอข้อมูลที่เป็น shapefile จากเวป OpenDevelopmentMekong ซึ่งข้อมูลแสดงขอบเขตจังหวัดต่างๆของประเทศไทยนั้นถูกเก็บอยู่ในรูปแบบไฟล์ที่เป็น shapefile(.shp) เราก็เลือกดาวน์โหลดอันที่เป็น .SHP มาใช้งาน แล้วในข้อมูลที่ได้มาก็มีข้อมูลที่ใช้ร่วมกันเพื่อแสดงข้อมูลอื่นๆ ที่จำเป็นสำหรับแผนที่ในรูปแบบไฟล์(.shx, .dbf, .prj) มาด้วยกันและพอจะนำมาใช้ได้ ก็เลยคิดว่าจะเอาข้อมูลนี้แหละมาแปลงให้เป็นข้อมูลในรูปแบบ GeoJSON(.geojson) พอดาวน์โหลดไฟล์แผนที่ดังกล่าวมาจะเป็น zip file พอแตกข้อมูลออกมาแล้วจะเห็นว่าจะมีไฟล์หลายไฟล์ที่ชื่อเดียวกันแต่เป็นไฟล์คนละนามสกุลกัน (.shp, .shx, .dbf, .prj) ซึ่งแต่ละไฟล์จะทำหน้าที่แตกต่างกันและเก็บข้อมูลกันคนละรูปแบบ เพื่อนำมาใช้ร่วมกันอีกที สำหรับการแปลงไฟล์ข้อมูลรูปแบบ shapefile(.shp) ให้เป็นไฟล์ที่เก็บข้อมูลในเป็นรูปแบบ GeoJSON(.geojson) ในครั้งนี้เราจะใช้ไลบรารี่ของ python ที่ชื่อว่า GeoPandas เริ่มต้นด้วยการติดตั้งไลบรารี่ GeoPandas กันก่อน Read more about python – แปลงข้อมูลจากแผนที่จาก shapefile(.shp) ให้เป็นรูปแบบ GeoJSON[…]

