Month: November 2010

แปลงข้อมูล CSV เป็นฐานข้อมูลเชิงพื้นที่ด้วย Spatialite

ข้อมูลทดสอบ

  • เขียนเรื่อง spatialite มา 2-3 ตอนแล้ว มาดูในตอนนี้สมมติว่ามี text file ที่เป็นรูปแบบ csv คั่นฟิลด์หรือคอลัมน์ด้วยเครื่องหมายคอมมา (,) ในข้อมูลมีคอลัมน์ค่าพิกัด X และ Y ด้วย เราจะมาแปลงเป็นฐานข้อมูลของ spatialite ซึ่งสามารถ export เป็น shapefile ได้ถ้าต้องการ สนใจดาวน์โหลดข้อมูลมาทดลองได้ตามลิงค์นี้ landmark_n.zip
ตัวอย่างข้อมูลเมื่อเปิดด้วย Notepad

ดาวน์โหลดโปรแกรม spatialite, spatialite-gui และ spatialite-gis

  • โปรแกรมและเครื่องมือที่จะใช้สำหรับการแปลงข้อมูลจะใช้ tools ที่ชื่อ spatialite-gui และการดูผลลัพธ์จะใช้ spatialite-gis สามารถดาวน์โหลดได้ที่ตามลิงค์นี้ spatialite ซึ่งจะมีให้ดาวน์โหลดหลาย platform ง่ายที่สุดก็คือเลือกดาวน์โหลดเฉพาะ spatialite-gui และ spatialite-gis ก็เพียงพอ

สร้างฐานข้อมูล

  • การสร้างฐานข้อมูล การสร้างตาราง(table) การเพิ่ม ลบ คอลัมน์ สามารถทำได้ใน spatialite-gui ได้หมดทั้งสามารถ query เพื่อสืบค้นด้าน spatial ได้ด้วย เมื่อเปิดโปรแกรมมาแล้ว จะทำการ load csv ที่ผมทำลิงค์ไว้ให้ตอนต้นๆ
สร้างฐานข้อมูล spatilalite ก่อน

Load CSV/Text

  • จะเห็น view และ table ที่ spatialite-gui สร้างมาให้เป็นดีฟอลต์ ต่อไปจะทำการ load csv คลิกที่เมนู Files > Advance > Load CSV/Text เลือกไฟล์ csv
Load CSV และตั้งค่าตัวคั่นเป็นคอมมาและโค๊ดของภาษาเป็น windows 874 (CP874)
แสดงตารางใหม่ของ landmark_n
  • ที่พาเนลด้านซ้ายตรงตาราง “landmark_n” คลิกขวาเลือก “edit table rows” ลองดูคอลัมน์ X และ Y
คอลัมน์ X,Y แสดงค่าพิกัดซึ่งจะนำมาสร้างเป็นคอลัมน์ Geometry

เพิ่มคอลัมน์ Geometry ด้วย AddColumnGeometry

  • เราจะสร้าง table ที่เก็บจุดแสดง landmark ด้วยการใช้ข้อมูล X,Y ที่อยู่ในคอลัมน์ที่ผมแสดงไว้ข้างต้น ด้วยการใช้ภาษา SQL ดังบรรทัดด้าน วิธีใช้ copy ไปไว้ที่ช่อง query ของ spatialite ดังรูปด้านล่าง สังเกตว่า 32647 คือ SRID แสดงระบบพิกัดของ UTM Zone 47N บนทรงรี WGS84

SELECT AddGeometryColumn('landmark_n','Geometry',32647,'POINT',2);

คำสั่ง Select AddGeometry เพื่อสร้างคอลัมน์เก็บจุด (geometry)
  • ในตอนนี้คอลัมน์ “Geometry” ที่ยัง Null อยู่ ลองใช้คำสั่ง “edit table rows” ดูอีกครั้ง
คอลัมน์ geometry

Update คอลัมน์ด้วย GeomFromText

  • ต่อไปจะ query ด้วย Update …GeomFromText คัดลอกโค๊ดด้านล่างไปแปะที่ช่อง queryแล้วคลิกที่ Execute SQL statement อธิบายอีกนิดว่าชื่อคอลัมน์ X และ Y เมื่อมาปรากฎในคำสั่งจะถูกหุ้มด้วยเครื่องหมาย || แล้วปิดด้วยเครื่องหมาย quote (‘) ถ้าเกิดคอลัมน์ X และ Y เป็นชื่ออื่นเช่น East และ North ตรงคำสั่ง POINT ก็จะกลายเป็น POINT(‘||EAST||’ ‘||NORTH||’)

UPDATE "landmark_n" SET Geometry = GeomFromText('POINT('||X||' '||Y||')',32647);

ใช้คำสั้ง query => update …geomfromtext เพื่อดึงค่าพิกัดจากคอลัมน์ X,Y

ความเป็น spatial เกิดขึ้นเมื่อ update ค่าพิกัดแล้ว

 

 

ทดสอบฐานข้อมูลด้วย spatialite-gis

 

 

    • ตอนนี้เราไม่ทราบว่าฐานข้อมูลเชิงพื้นที่จะมีสภาพเป็นอย่างไร ปิดทูลส์ spatialite-gui แล้วเปิด spatialite-gis เมื่อเปิดมาแล้วทำการ connect ไปที่ฐานข้อมูล “bangkokgis.sqlite” ที่เราสร้างไว้แล้ว ในตอนแรกโปรแกรมจะถามว่าให้สร้าง table เพิ่มหรือปล่าวเช่น table เก็บสัญลักษณ์ symbol ผมเลือก yes ตรงบรรทัดที่สองเพื่อเลือกให้ spatialite-gis สร้างให้อัติโนมัติ จะเห็นการแสดงผลเป็นจุด

 

 

Spatialite Tutorial

  • จะเห็นว่าใน post นี้มีคำสั่ง query ของ spatialite อยู่สองคำสั่ง ยังมีคำสั่งอื่นอีกพอสมควรที่น่าศึกษา มี tutorial ที่เขียนไว้ได้ดีพอสมควรใน website ของ spatialite เองสนใจไปดูได้ที่ spatialite tutorial
  • ความจริงฐานข้อมูล landmark_n เป็นไฟล์ Shape file แสดง landmark ของกรุงเทพมหานคร ผมดาวน์โหลดมาจาก website จำไม่ได้ว่าที่ไหนเพราะนานแล้ว ยังมีฐานข้อมูลเป็น shape file อีกหลายตัวที่เราจะนำมาทดสอบกันครั้งหน้า จะล้วงลึกเรื่อง query ด้าน spatial ก็ติดตามกันต่อไปนะครับ


พม่าในมุมมองเสี้ยวหนึ่งของชีวิต

การเลือกตั้งในพม่า

  • จากที่ผมได้เข้าไปทำงานในพม่าประมาณ 3 ปีกว่าเข้าๆออกๆ บางครั้งก็อยู่นานหลายๆเดือนได้พบได้เห็นวิถีชีวิตของคนพม่าจากสายตาโดยตรง เห็นบ้านเห็นเมืองพม่าที่ว่ากันว่าล้าหลังด้านความเจริญเมื่อเทียบกับเมืองไทยอยู่เป็น 40 – 50 ปีนั้น ถึงแม้ 3 ปีระยะเวลาจะไม่ยาวนานนักก็ตาม แต่หลังจากเลือกตั้งในวันที่ 7 พย. 53 ที่ผ่านมาได้รับฟังข่าวบางครั้งบางตอนที่ดูเหมือนจะโจมตีเรื่องเลือกตั้งในพม่า จนบางครั้งการโจมตีดูเหมือนจะคลาดเคลื่อนและเกินจริงไปบ้างก็ตามที

เจดีย์ชเวกอง 2 (อุปปตะสันติ) ในเมืองเนปิดอ

  • ผมฟังข่าววิทยุวันที่ 8 พย. 53 ตอนเช้าดำเนินการโดยผู้จัดชื่อดังรายงานหนึ่งกล่าวถึงเรื่องการเลือกตั้ง ในตอนหนึ่งระบุว่าเจดีย์ชเวดากอง 2 หรือที่เรียกว่าเจดีย์อุปปตะสันตินั้นผู้นำรัฐบาลทหารพม่าสร้างไว้เป็นเจดีย์ประจำตัว สร้างขึ้นเพื่อข่มเจดีย์ชเวดากองที่กรุงย่างกุ้งอะไรประมาณนั้น ผมฟังแล้วจะโจมตีเรื่องการเลือกตั้งก็ว่ากันไป แต่เมื่อมาพาดพิงถึงเจดีย์ผมในฐานะชาวพุทธก็ขอคัดค้านบ้างตามสมควร ผมมีโอกาสได้ไปนมัสการเจดีย์นี้ก่อนการเลือกตั้งไม่นานนัก ตอนแรกไม่ได้นึกอะไรมากนักเพราะเคยไปนมัสการพระมหาเจดีย์ชเวดากองอยู่ก่อนแล้ว แต่พอไปถึงเป็นเวลาย่ำค่ำแล้ว เจดีย์ตั้งอยู่บนเนินดิน ขึ้นลิฟท์ไปประมาณ 3 ชั้นน่าจะได้ออกจากลิฟท์เป็นทางเดินประมาณ 50 กว่าเมตร มองเห็นเจดีย์สวยงามมาก ประดับประดาไฟได้อย่างพอดิบพอดี รอบๆเจดีย์ก็เหมือนเจดีย์ชเวดากองคือ ตั้งพระพุทธรูปประจำวันให้ผู้คนได้กราบไหว้ หรือจะเดินชมทัศนารอบๆเจดีย์ไปอย่างไม่รีบร้อน
เจดีย์อุปปตะสันติในยามย่ำค่ำที่งดงามมาก

ความสูงของเจดีย์

  • ความสูงของเจดีย์อุปปตะสันตินั้นเตี้ยกว่าเจดีย์ชเวดากองประมาณ 1 ฟุต ผมคิดว่าเป็นความจงใจของผู้สร้าง เพราะพระเจดีย์ชเวดากองนั้นอยู่คู่บ้านคู่เมืองพม่ามานาน ใครเล่าจะคิดสร้างเจดีย์ขึ้นมาใหม่แล้วเพื่อเทียบรัศมีพระมหาเจดีย์ชเวดากอง
เทพหรือนัตที่ดูแลพระเจดีย์
ทางเดินขึ้นพระเจดีย์ (ถ้าไม่อยากขึ้นด้วยลิฟท์)
ซุ้มประตูหนึ่งในสี่ซุ้มเข้าพระเจดีย์ที่งดงามเหนือคำบรรยาย

ศรัทธาในพระศาสนาอย่างล้ำลีก

  • ถ้าใครได้ไปเที่ยวพม่าอาจจะพบคนพม่านั่งเจริญภาวนาสวดมนต์หน้าเจดีย์เป็นชั่วโมง ผมเคยถามคนพม่าหลายๆคนว่าเชื่อเรื่องเวรกรรม ชาติก่อนและชาติหน้าไหม คำตอบที่ได้นั้นเชื่อในเรื่องบุญกรรมและการเวียนว่ายตายเกิด ถ้าไม่เชื่อเรื่องนี้แล้วเป็นอันตรายมากคือคนจะทำอะไรก็ได้ ทั้งดีและชั่วในชาตินี้โดยไม่ต้องห่วงเรื่องเวรกรรมเลย
สาวคนนี้นั้งสวดมนต์ภาวนาโดยนั่งนับลูกประคำอยู่ตรงหน้าพระประจำวันเกิด
ภายในพระเจดีย์จะเห็นภาพชินตาผู้ชายบางคนจะนั่งยองๆไหว้พระ
ภายในพระเจดีย์จะเห็นเสาใหญ่กลางด้านบนมีภาพแกะสลักประดับไว้กำกับคำอธิบายด้วยภาษาพม่าและภาษาอังกฤษ
อีกภาพงดงามจับใจ

เนปิดอ (Nay Pyi Taw) เมืองหลวงแห่งใหม่

  • ช่วงที่ผมไปเมืองเนปิดอ ยังเห็นงานก่อสร้างเมืองหลวงที่เร่งวันและคืนอย่างไม่หยุดหย่อน ทั้งที่เมืองหลวงใหม่นี้ก่อสร้างมาหลายปีแล้ว ตามคำร่ำลือว่าทางรัฐบาลพม่าย้ายเมืองหลวงเพราะต้องการพื้นที่ด้านยุทธศาสตร์ จะอย่างไรก็ตามเท่าที่เห็นด้วยสายตาผมนั้น ณ ที่แห่งใหม่นั้นการวางผังเมืองบนพื้นที่ 7000 ตารางกิโลเมตรนั้น ผมเห็นด้วยกับนักข่าวของอินเดียท่านหนึ่งที่ไปเยือน ณ ที่นี่ว่าไม่ใช่เด่นเรื่องรถถังและเรือปืนแต่เป็นเรื่องของ Geometry และ Cartography
มองไกลๆออกไปจะเห็นตึกที่กำลังก่อสร้าง
อีกภาพหนึ่ง

ย่างกุ้งเมืองหลวงเก่า

  • ย้อนกลับมายังย่างกุ้ง (Yangon) เมืองหลวงเก่า นั้นผมมีโอกาสไปมาหลายเที่ยว เมืองหลวงเก่านี้เป็นเพียงเมืองไม่กี่เมืองเช่น พุกาม (Bagan), มัณฑะเลย์ (Mandalay) และ หงสาวดี ที่เปิดให้นักท่องเที่ยวได้ไปเยี่ยมชมความงามกัน ในย่างกุ้งมีเจดีย์ที่สำคัญอยู่หลายแห่งซึ่งผมได้ไปไม่กี่แห่งเช่น เจดีย์ชเวดากอง, เจดีย์พระตาหวาน, เจดีย์ซูเลย์ และเจดีย์โบทาทาว สำหรับพระมหาเจดีย์ชเวดากองนั้น ผมว่ามีคนไทยหลายๆคนได้ไปนมัสการกัน ความงดงามวิจิตรบรรจง ความอลังการนั้นคงเหนือคำบรรยายใดๆ ถ้าให้ดีต้องมีไกด์นำเที่ยวบรรยายด้วย หรือหาเอาไกด์พม่าตรงนั้นที่พูดไทยได้ก็มี
พระมหาเจดีย์ชเวดากองในยามเย็น
ยามเย็นรอบๆพระมหาเจดีย์ชเวดากองคลาคล่ำด้วยผู้คน
หมุด survey อยู่รอบเจดีย์หลายหมุดเอาไว้ตรวจสอบศูนย์ของเจดีย์(ว่าเอียงไปจากเดิมหรือไม่)
เจดีย์เจ้าทัตจีหรือพระตาหวาน
พระบาทมีภาพมงคล 108 ประการ

เมืองมะริดและทวายดินแดนไทยแต่โบราณ

  • ทวายและมะริดเป็นหัวเมืองด้านใต้ของพม่า ซึ่งครั้งหนึ่งเคยเป็นของไทยมาก่อนก่อนจะเสียให้อังกฤษตอนร. 5 ทวายกับมะริดเป็นเมืองที่ผมเข้าไปได้บ่อย สองเมืองนี้ต้องบอกไว้ก่อนว่าไม่อนุญาตนักท่องเที่ยวเข้าไปได้ พม่านี้ไม่เหมือนเมืองไทย ค่ำไหนสามารถไปอาศัยวัดหรือคนรู้จักนอนได้ แต่ที่นี่คนรู้จะไม่ทำกันเพราะจะทำให้เจ้าอาวาสหรือเจ้าของบ้านเดิือดร้อน ทวายมีเจดีย์ที่สำคัญอยู่หลายเจดีย์ แต่ผมตอนนี้บุญยังไม่ถึงอยู่ใกล้แต่ไม่มีโอกาสได้ไปกราบเลย แต่ยังดีมีโอกาสได้ไปนมัสการอยพระพุทธบาททั้งสองรอยคือรอยเท้าซ้ายและรอยเท้าขวา ซึ่งจะไม่มีในหนังสือนำเที่ยวใดๆ (เ้พราะไม่ให้นักท่องเที่ยวมากันอยู่แล้ว)

รอยพระพุทธบาทที่ทวาย

  • มาดูรอยเท้าขวาก่อนอยู่ห่างจากเมืองทวายไปพอสมควร ความจริงด้วยระยะทางนั้นไม่ไกลเท่าไหร่แต่การเดินทางยากลำบาก (หนึ่งชั่วโมงใช้รถ 4 wheels ดีๆไปได้ซัก 15 กม. ก็เก่งแล้ว) รอยพระพุทธบาทอยู่บนเนินเขา ถ้าขึ้นไปมองกลับมาที่ตัวเมืองทวายจะเห็นเมืองได้ชัดเจน
รอยพระพุทธบาทขวาที่ทวาย ในวัดเล็กๆแห่งหนึ่งที่คนภายนอกแทบไม่รู้จัก ไม่ได้ตกแต่งลงทองที่รอยพระพุทธบาท มีรูปปั้นพญานาคล้อมรอยพระพุทธบาท
วิหารที่ประดิษฐานครอบรอยพระพุทธบาท
สุดยอดไก๊ด์มือทองชื่อ “นากาเปีย” ที่มีความวิริยะอุตสาหะ สามารถพาผมมาถึงที่นี่จนได้
  • ไกลออกไปจากที่รอยพระพุทธบาทขวาประมาณ 1 ชั่วโมงกว่าจะเป็นรอยพระพุทธบาทซ้าย
วัดที่ประดิษฐานองค์รอยพระพุทธบาทด้านซ้าย ซุกซ่อนตัวอยู่เงียบๆ
องค์รอยพระพุทธบาทด้านซ้าย

ความเป็นอยู่ของผู้คนชนบททวายและมะริด

  • ผมพบกับคนพม่าที่นี่หลายๆคนที่เคยไปทำงานเมืองไทย บางคนกลับมาตั้งตัวเปิดร้านขายของดูพอมีฐานะ ส่วนใหญ่จะประทับใจเมืองไทย และมีความรู้สึกว่ารักเมืองไทยและคนไทยมาก ผมเองในภูมิภาคนี้ก็ไปทำงานมาเกือบหมดตั้งแต่ ฟิลิปปินส์ อินโดนีเซีย มาเลเซีย สิงคโปร์ กัมพูชา ลาว และพม่า ทัศนคติที่พวกเขามองคนไทย ดูจะย่ำแย่ที่สุดในสายตาคนกัมพูชาและคนลาว มันคงช่วยไม่ได้เพราะบาดแผลสงครามที่อเมริกามาสร้างไว้เกินกว่าจะเยียวยากันได้ง่ายๆ สำหรับที่พม่าก็ต่่างออกไปเราเรียนประวัติศาสตร์สอนให้ไม่ไว้วางใจพม่า แต่กับคนพม่าระดับชาวบ้าน ไม่ได้รับการปลูกฝังเรื่องเหล่านี้เลย สำหรับคนไทยแล้วที่ไหนก็ได้ที่พม่าจะพบเห็นแต่ความเป็นมิตร
  • ความเป็นอยู่ที่มะริดทวายยังพึ่งเกษตรกรรมกันมาก หลักๆคือปลูกข้าว บนที่สูงเนินเขาจะเห็นปลูกมะม่วงหิมพานต์กันมาก ทางด้านใต้เช่นที่มะริดจะปลูกยางพารา แต่ไม่ใช่ชาวบ้านเป็นบริษัทฯมาสัมปทานปลูกกันมากกว่า ที่มะริดนั้นมีธุรกิจด้านประมงที่ค่อนข้างใหญ่ทีเดียว คนพม่าส่วนใหญ่อาจจะไม่ค่อยมีเงิน แต่มีกินครับ
นาข้าวที่หมู่บ้านแห่งหนึ่งในทวายในยามที่ครึ้มฟ้าครึ้มฝน การปลูกข้าวยังใช้แรงงานกันเป็นส่วนใหญ่
นาข้าวในยามเข้าหน้าเก็บเกี่ยว ภาพแบบนี้ในเมืองไทยนับวันจะหายากแล้ว เนื่องจากใช้รถเกี่ยวข้าวกัน
การเดินทางส่วนใหญ่ยังใช้รถสองแถวโดยสาร จะเห็นปลาทะเลที่อยู่บนหลังคาตัวใหญ่ (ถนนลาดยางที่เห็นในรูปหากันได้ไม่ง่าย ส่วนใหญ่เป็นถนนดินตามมีตามเกิด)
ชายคนนี้นั่งพักข้างทางเดินเพราะเหนื่อยจากหาบปลาทะเลจากเรือประมงเล็กๆริมฝั่งทะเล จะเห็นความอุดมสมบูรณ์ของที่นี่

แมวขาวและแมวดำ

  • ถึงแม้ผลการเลือกตั้งชองพม่าจะออกมาเป็นแบบใดก็ตาม ผมก็ยังเห็นด้าน positive ครั้งนี้ ผมมีลูกน้องเป็นคนพม่าเชื้อสายกะเหรี่ยง เขาไปทำบัตรประชาชนก่อนการเลือกตั้งไม่กี่วัน ซึ่งก่อนหน้านี้แทบเป็นไปไม่ได้คือต้องใช้เงินและใช้เวลารอนานมาก แต่ครั้งนี้เขาใช้เวลาอยู่ประมาณอาทิตย์กว่าก็ได้บัตรมาแล้ว ก็ยังเห็นสัญญาณดีๆของการเลือกตั้งครั้งนี้
  • วาทะของเติ้งเสี่ยวผิงที่ว่า “แมวขาวหรือแมวดำ ขอให้จับหนูได้ก็เป็นพอ” เป็นวลีของผู้นำพรรคคอมมิวนิสต์จีนได้กล่าวไว้ตอนที่จะนำจีนแบบคอมมิวนิสต์เข้าสู่เส้นทางทุนนิยม จนถึงปัจจุบันปรัชญาการสร้างชาติของจีนที่เน้นให้คนทำมาหากินและขยันขันแข็ง ถือครองสินทรัพย์ได้ ไม่ว่าจะเป็นฝ่ายซ้ายหรือขวา จนปัจจุบันจีนได้ทะยานเ็ป็นมหาอำนาจแห่งใหม่ ปัจจุบันจีนพยายามนำปรัชญาขงจื๊อกลับเข้ามาใช้อีกครั้งเพื่อเป็นตัวถ่วงดุลย์กับพิษของทุนนิยมเพื่อแก้ปัญหาด้านสังคม ก็มาดูว่าหลังการเลือกตั้งของพม่าจะเป็นแมวดำหรือแมวขาว จะจับหนูกินได้หรือปล่าว