html,js,leaflet – เปรียบเทียบความคมชัดของไฟล์แผนที่ .geojson ซึ่งบีบอัดโดยความละเอียดต่างกัน ตอนที่ 2

จาก 2 บทความก่อนหน้านี้:- บทความแรก: เราได้ทำการบีบอัดข้อมูลแผนที่จาก shapefile ให้เป็นไฟล์ .geojson ซึ่งเราได้ทดลองทำการบีบอัดไฟล์ข้อมูลแผนที่ประเทศไทยซึ่งมีข้อมูลระบุขอบเขตของทุกจังหวัด เพื่อบีบอัดจากไฟล์ที่มีความละเอียดสูงให้มีขนาดเล็กลงเพื่อตอนที่โหลดเพื่อนำไปใช้งานจะได้ไม่ต้องใช้หน่วยความจำในการโหลดและประมวลผลมากนัก โดยฟังก์ชันที่ใช้ในการบีบอัดสำหรับบทความที่แล้วเราก็ยังสามารถระบุความละเอียดของแผนที่ได้ตามความเหมาะสมที่เราจะนำไปใช้งาน บทความที่สอง: เราได้ทำการเขียนโปรแกรมเพื่อดึงข้อมูลแผนที่ซึ่งได้ทำการบีบอัดให้ขนาดไฟล์เล็กลงออกมาแสดงผลดู และเปรียบเทียบความละเอียดของแผนที่ในบางพื้นที่ ว่าเมื่อดูด้วยตาของเราจริง ความละเอียดของการบีบอัดที่แตกต่างการจะส่งผลต่อการมองเห็นต่างกันมากน้อยอย่างไร ในบทความนี้เราจะลองเขียนโปรแกรมเพื่อดึงข้อมูลแผนที่แต่ละจังหวัดออกมา และแสดงผลเปรียบเทียบสำหรับความละเอียดของไฟล์ .geojson แต่ละแบบที่เราได้ทำการบีบอัดข้อมูลเอาไว้ เพื่อดูว่า เมื่อเราต้องการดูข้อมูลแผนที่ในระดับที่ดูโครงร่างของจังหวัด ในความละเอียดแต่ละแบบจะแสดงผลแตกต่างกันอย่างไรบ้าง ตัวอย่างโปรแกรมเปรียบเทียบความละเอียดของแผนที่ซึ่งถูกบีบอัดด้วยความละเอียดที่แตกต่างกัน(สามารถเลือกชื่อจังหวัดเพื่อเปรียบเทียบแผนที่ซึ่งความละเอียดข้อมูลแตกต่างกัน) ในตัวอย่างด้านล่างนี้ เราจะเปรียบเทียบไฟล์แผนที่ .geojson ที่ถูกบีบอัดให้เหลือไฟล์ขนาดที่แตกต่างกัน 3 ระดับ จากละเอียดน้อยด้านซ้าย(ขนาดไฟล์เล็ก) ไปจนถึงความละเอียดมากด้านขวา(ขนาดไฟล์ใหญ่ขึ้น) จากนั้นเราลองเลือกดูแผนที่ของจังหวัดชัยนาท(Chai Nat) จะเห็นว่าการแสดงผลแผนที่จากไฟล์ .geojson ที่บีบอัดจากความละเอียดที่แตกต่างกัน ก็แสดงผลออกมาไม่แตกต่างกันมากนัก แต่สำหรับแผนที่อันซ้ายสุดที่ถูกบีบอัดไฟล์ .geojson จนเหลือไฟล์ขนาด 553.9 kB นั้น ข้อมูล polygon ของแผนที่จะมีความหยักน้อยลงกว่าแผนที่อันกลางกับอันขวาสุดแบบสังเกตุได้ชัด แม้ว่ารูปร่างของเส้นแบ่งเขตแดนจังหวัดจะไม่เปลี่ยนแปลงไปมากนัก แต่ข้อมูลก็มีความแตกต่างที่พอจะมองเห็นได้ด้วยสายตา ดังนั้นถ้าต้องการจะนำไปใช้กับแอพลิเคชันที่ดูข้อมูลระดับของเขตจังหวัดออกมาดู ก็อาจจะต้องพิจารณาเลือกไฟล์ที่มีขนาดใหญ่ขึ้นกว่านี้อีกสักหน่อย เช่น แผนที่อันกลางซึ่งมีความละเอียดไฟล์ 2.9 MB Read more about html,js,leaflet – เปรียบเทียบความคมชัดของไฟล์แผนที่ .geojson ซึ่งบีบอัดโดยความละเอียดต่างกัน ตอนที่ 2[…]

html,js,leaflet – เปรียบเทียบความคมชัดของไฟล์แผนที่ .geojson ซึ่งบีบอัดโดยความละเอียดต่างกัน ตอนที่ 1

จากบทความตอนที่แล้ว เราได้ทดลองทำการบีบอัดไฟล์ข้อมูลแผนที่ประเทศไทยซึ่งมีข้อมูลระบุขอบเขตของทุกจังหวัด เพื่อบีบอัดจากไฟล์ที่มีความละเอียดสูงให้มีขนาดเล็กลงเพื่อตอนที่โหลดเพื่อนำไปใช้งานจะได้ไม่ต้องใช้หน่วยความจำในการโหลดและประมวลผลมากนัก โดยฟังก์ชันที่ใช้ในการบีบอัดสำหรับบทความที่แล้วเราก็ยังสามารถระบุความละเอียดของแผนที่ได้ตามความเหมาะสมที่เราจะนำไปใช้งาน หลังจากบีบอัดไฟล์ข้อมูลแผนที่ .geojson ซึ่งมีความละเอียดที่แตกต่างกันแล้ว ออมก็มีความสงสัยขึ้นมาอีกว่า แล้วข้อมูลที่ถูกบีบลงไปนั้นจะยังคงความละเอียดมากแค่ไหน จะเหมาะกับนำไปใช้งานอย่างไร เดี๋ยววันนี้เราจะมาลองดึงข้อมูลดังกล่าวเพื่อมาแสดงผลเป็นข้อมูลแผนที่ที่ถูกบีบอัดด้วยความละเอียดที่แตกต่างกัน ลองมาซูมแผนที่ดู ว่าข้อมูลแผนที่ที่ถูกบีบอัดแล้วความละเอียดจะเพียงพอกับการใช้งานหรือไม่ ในบทความนี้ ออมก็เลยทดลงเขียนแอพลิเคชันขึ้นมาหนึ่งอัน เพื่อไว้ทดสอบการแสดงผลแผนที่ ซึ่งบีบอัดด้วยความละเอียดแตกต่างกัน และเราจะใช้ html ร่วมกับ javascript และ library leaflet สำหรับแอพลิเคชันนี้เพื่อจะใช้ในการนำมาแสดงผลข้อมูลแผนที่และเขียนโค้ดให้รับข้อมูลเข้าไปนิดหน่อย ตัวอย่างโปรแกรม จะเห็นจากในโปรแกรมด้านบน ก็จะมีแสดงแผนที่ 3 แบบ ซึ่งบีบอัดมาด้วยความละเอียดของไฟล์แตกต่างกัน แผนที่ด้านซ้ายสุด ถูกบีบอัดจนเหลือขนาดไฟล์ 553.9 kB แผนที่ตรงกลาง ถูกบีบอัดจนเหลือขนาดไฟล์ 2.9 MB แผนที่ด้านขวาสุด ถูกบีบอัดจนเหลือขนาดไฟล์ 14.1 MB ส่วนตัวเลือกในแอพลิเคชัน เราจะแสดงตัวอย่างที่การซูมแผนที่ 3 ระดับ เลือกดูแผนที่ในระยะซูมดูข้อมูลแผนที่รวมทั้งประเทศ (ตั้งค่าจุดกึ่งกลางเป็น [13.29900, 100.9925], ระดับซูม 5) เลือกดูแผนที่ในระยะซูมเพื่อดูแผนที่เฉพาะจังหวัดภูเก็ต (ตั้งค่าจุดกึ่งกลางเป็น Read more about html,js,leaflet – เปรียบเทียบความคมชัดของไฟล์แผนที่ .geojson ซึ่งบีบอัดโดยความละเอียดต่างกัน ตอนที่ 1[…]

R – จะติดตั้งแพคเกจ leaflet ใช้กับ R แล้วมันมี library บางตัวที่จำเป็นต้องติดตั้งให้ ubuntu ก่อน

จะทดลองใช้ leaflet ใน R เพื่อแสดงข้อมูลในรูปแบบแผนที่ แต่ว่าพอเรียกใช้คำสั่งติดตั้งปกติใน console ของ R พอติดตั้งไปได้ครึ่งทางแล้วก็เกิด error ขึ้น ว่าหา library บางตัวไม่เจอ ทำให้ติดตั้งไม่เสร็จแล้ว error ออกมา # ติดตั้งแพคเกจ leaflet install.packages(“leaflet”) ไปนั่งอ่าน error และไปหาข้อมูลเพิ่มเติม สรุปว่ามีไลบรารี่ ที่จำเป็นต้องติดต้องให้ os เพิ่มเติมก่อน ที่ leaflet จะเรียกใช้ได้ สำหรับตอนนี้ที่ใช้ ubuntu ก็จำเป็นต้องติดตั้งไลบรารี่ เหล่านี้ให้กับ ubuntu ให้เสร็จก่อน เพราะ R เองไม่สามารถติดตั้งไลบรารี่ของ os เหล่านี้ให้เองอัตโนมัติ จำเป็นต้องติดตั้งแยก ชื่อที่ติดต้งไปก็จะมี:- libudunits2-dev libgdal-dev libgeos-dev libproj-dev รันคำสั่งติดตั้งไลบรารี่เหล่านี้ใน terminal ของ ubuntu (ต้องใช้ sudo Read more about R – จะติดตั้งแพคเกจ leaflet ใช้กับ R แล้วมันมี library บางตัวที่จำเป็นต้องติดตั้งให้ ubuntu ก่อน[…]