วันศุกร์ที่ 29 พฤศจิกายน พ.ศ. 2556

Lab.4 การสอบถามข้อมูล

8การสอบถามข้อมูล

การสำรวจข้อมูล (Data Exploration)
        
          คือ  การค้นและวิเคราะห์ข้อมูลจากศูนย์ หรือ ฐานข้อมูล

องค์ประกอบหลัก

          -  หน้าต่าง (คำสั่ง) ในการโต้ตอบ
          -  หน้าต่างที่ใช้ในการแสดงผล

ผลลัพธ์ที่ได้จากการสำรวจ

          -  แผนที่ (ข้อมูลเวกเตอร์, ข้อมูลแรสเตอร์)
          -  กราฟ
          -  ตาราง

การสอบถามข้อมูลเวกเตอร์  มี  2  แบบ

         1.  การสอบถามข้อมูลเชิงคุณลักษณะ (Attribute data query)
                    *  พีชคณิต
                             -  ข้อมูลแบบนิพจน์ 
                                       เช่น  =     เท่ากับ
                             -  ข้อมูลตัวเชื่อมบูลีน
                                       เช่น  AND  และ
                                                OR     หรือ

         2.  การสอบถามข้อมูลเชิงพื้นที่  (Spatial data query)
                             -  เคอเซอร์,ใช้เม้าส์คลิก
                             -  ใช้กราฟฟิก

  การสอบถามข้อมูลจาก Navigation Tools


เปิดข้อมูลD:\\-->Kanchanaburi-->Amphoe


ภาพที่ 1.1  การนำเข้าข้อมูล

เครื่องมือ Navigation


ภาพที่ 1.2  การนำเข้าข้อมูล


  <การแสดงเฉพาะข้อมูลที่เลือก (Definition query) โดยใช้หน้าต่าง 

      Query builder และภาษา SQL


คลิกขวาที่ข้อมูล Amphoe --> Properties

ภาพที่ 2.1 การแสดงเฉพาะข้อมูลที่เลือก

เลือก Definition Query --> Query Builder 

ภาพที่ 2.2 การแสดงเฉพาะข้อมูลที่เลือก

หน้าจอแสดงการทำ Query Builder 

ภาพที่ 2.3 การแสดงเฉพาะข้อมูลที่เลือก

(1)เลือกข้อมูล AMP_Name --> (2) กด Get Unique Values (เพื่อแสดงข้อมูลในชั้นข้อมูล)

ภาพที่ 2.4 การแสดงเฉพาะข้อมูลที่เลือก

จากโจทย์ให้ค้นหา อ.ทองผาภูมิ ในจังหวัด กาญจนบุรี ใช้สูตร "AMP_NAME" = 'ทองผาภูมิ'


ภาพที่ 2.5 การแสดงเฉพาะข้อมูลที่เลือก


 <การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL


ไปที่Lab11 > world > ลาก country(ที่เป็นโพลิกอน) มาเปิด 


ภาพที่ 3.1 การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

เปิดตาราง Attribute : คลิกขวาที่ country > เลือก Open Attribute Table


ภาพที่ 3.2  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

CNTRY_NAME คือ ใช้เก็บชื่อประเทศ
POP_CNTRY    คือ ใช้เก็บข้อมูลประชากร


ภาพที่ 3.3 การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

SQKM_CNTRY    คือ ข้อมูลพื้นที่มีหน่วยเป็นกิโลเมตร
SQMI_CNTRY      คือ ข้อมูลพื้นที่มีหน่วยเป็นไมล์
CURR_TYPE      คือ สกุลเงิน
CURR_CODE    คือ รหัสสกุลเงิน
LANDLOCKED  คือ ติดทะเลหรือไม่ติดทะเล    N คือ ติดทะเล  Y คือ ไม่ติดทะเล


ภาพที่ 3.4  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

วิธีการเปิดเครื่องมือ Select By Attributes 

สามารถเปิดได้หลายวิธี
วิธีที่ 1 เปิดจาก Table Options > Select By Attribute 


ภาพที่ 3.5 การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

วิธีที่ 2 เปิดจาก icon Select By Attribute ที่อยู่ในส่วนหัวของตาราง Attribute ได้เลย


ภาพที่ 3.6  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

วิธีที่ 3 เปิดจาก Selection >  Select By Attribute 


ภาพที่ 3.7  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 1

อยากรู้ว่ามีประเทศอิตาลีหรือไม่

เลือก "CNTRY_NAME"='Italy' แบบนี้


ภาพที่ 3.8  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ลองกด Apply > แล้วดูว่าสิ่งที่เราค้นหามีหรือไม่ กดShow selected records มันจะโชว์สิ่งที่เราเลือก 
คือ ประเทศอิตาลี


ภาพที่ 3.9  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 2

มีประเทศอะไรที่ประชากรมากกว่า 300,000,000

เลือก "POP_CNTRY" > 300000000 จะได้ 2 ประเทศคือ China และ India


ภาพที่ 3.10  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 3

มีกี่ประเทศที่ขึ้นต้นด้วยตัว T

เลือก "CNTRY_NAME" LIKE'T%' จะได้ 13 ประเทศ


ภาพที่ 3.11  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 4

มีกี่ประเทศที่ไท้ใช้สกุลเงิลเป็น Dollar

เลือก "CURR_TYPE" NOT LIKE 'Dollar' หรือ NOT "CURR_TYPE" LIKE 'Dollar' หรือ  "CURR_TYPE" <> 'Dollar' คำตอบคือ 222 ประเทศ


ภาพที่ 3.12  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 5

แบบ 2 เงื่อนไข

มีกี่ประเทศที่มีประชากรมากกว่า 200,000,000 และไม่มีพื้นที่ติดทะเล

เลือก "POP_CNTRY" >200000000 AND "LANDLOCKED" ='Y' ผลลัพธ์คือ ไม่มีประเทศที่มีประชากรมากกว่า 200,000,000 และไม่มีพื้นที่ติดทะเล


ภาพที่ 3.13  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL

ตัวอย่าง โจทย์ ที่ 6

ประเทศใดบ้างที่ไม่ใช้เงินบาทและพื้นที่มากกว่า10,000,000

เลือก"CURR_TYPE" NOT LIKE 'Baht' AND "SQKM_CNTRY" >=10000000 หรือ NOT "CURR_TYPE"='Baht' AND "SQKM_CNTRY" >=10000000  ผลลัพธ์คือ Antarctica และ Russia


ภาพที่ 3.14  การสอบถามข้อมูลโดยใช้ Select by Attribute และภาษา SQL


  <การสอบถามข้อมูลโดยใช้ Select by Location

เปิด KANCHANABURI > Kanburi > ลาก AMPHOE (ที่เป็นโพลิกอน) มาเปิด 
                                                         > ลาก TRANS (ที่เป็นโพลิกอน) มาเปิด 
                                                         > ลาก VILLAGE (ที่เป็นโพลิกอน) มาเปิด 
ลากมาเปิดทั้ง 3อัน

ภาพที่ 4.1 การสอบถามข้อมูลโดยใช้ Select by Location

เปิดคำสั่งไปที่ Selection > Select By Location


ภาพที่ 4.2 การสอบถามข้อมูลโดยใช้ Select by Location

ตรงSelection Method

คือ รูปแบบการแสดงผลลัพธ์จากการค้น มี 4รูปแบบด้วยกัน


รูปแบบที่1 Select features from คือ แสดงผลลัพธ์ปัจจุบันเท่านั้น

รูปแบบที่ 2 add to the currently selected features in คือ ผลลัพธ์ที่ได้ ณ ปัจจุบันจะไปรวมกับผลลัพธ์ก่อนหน้าแล้วจึงแสดงผล

รูปแบบที่ 3 remove from the currently selected features in คือ เงื่อนไขปัจจุบันลบออกจากเงื่อนไขก่อนหน้านี้แล้วจึงแสดงผล

รูปแบบที่ 4 selected from the currently selected features in คิอ เงื่อนไขปัจจุบัน intersect กับเงื่อนไขก่อนหน้าหรือเลือกอันที่เหมือนแล้วจะแสดงผล



ภาพที่ 4.3 การสอบถามข้อมูลโดยใช้ Select by Location

ตรงTarget layer(s) คือ ข้อมูลเป้าหมายที่เราจะค้น

ตรงSource layer คือ ข้อมูลที่จะทำกับเป้าหมาย


ภาพที่ 4.4 การสอบถามข้อมูลโดยใช้ Select by Location

ตรงSpatial selection method 

เป็นการเลือกรูปแบบของการค้นข้อมูลว่าจะให้มันเป็นไปในลักษณะไหน ในส่วนนี้จะต้องเลือกให้ตรงกับโจทย์ที่เราได้รับ
มันก็มีอยู่ 4 แบบหลักๆที่นิยมใช้ คือ
1.ตัวแรก  Target layer(s) features intersect the source layer feature คือ ให้มันintersectกัน
2.อันที่ 3  Target layer(s) features are within a distance of the source layer feature คือ อยู่ภายในระยะทางที่เรากำหนด
3.อันที่ 8 (นับจากข้างล่าง)  Target layer(s) features are within the source layer feature 
4.อันที่ 4 (นับจากข้างล่าง)  Target layer(s) features touch the boundary of the source layer feature คือ ใหมันสัมผัสกับขอบเขต


ภาพที่ 4.5 การสอบถามข้อมูลโดยใช้ Select by Location

ตัวอย่าง โจทย์

มี่กี่หมู่บ้านที่ตั้งห่าง 100 เมตร จากถนน

 Target layer(s)  เลือกเป็น VILLAGE > Source layer เลือกเป็น TRANS > Spatial selection method เลือกเป็น Target layer(s) features are within a distance of the source layer feature > ช่อง Apply a search distance ติ๊กเครื่องหมายถูกที่หน้าช่อง แล้วใส่ระยะทางลงไป คือ 100 เลือกหน่วยให้ถูกต้อง


ภาพที่ 4.6 การสอบถามข้อมูลโดยใช้ Select by Location




VDO




























วันศุกร์ที่ 22 พฤศจิกายน พ.ศ. 2556

Lab.3 การจัดการมาตราส่วนแผนที่ (Map Scale Management)

การกำหนดและแปลงระบบพิกัดภูมิศาสตร์

และการแปลงพื้นหลักฐาน

การแปลงระบบพิกัดภูมิศาสตร์ (Define Projection)

สร้าง Folder ไว้ใน RT ArcGIS (Fang_Project) ไปเลือก Folder Lab11--> Copy Chaopaya ไปใส่ไว้ใน

Folder ที่เราตั้งชื่อไว้ (Fang_Project) 


ภาพที่ 1 การสร้าง Folder ใหม่



ภาพที่ 2 Copy ข้อมูลไปเก็บไว้ในFolder (Fang_Project) ที่สร้างขึ้นใหม่



ภาพที่ 3 ดึงข้อมูลที่ต้องการเข้ามา


ถ้ายังไม่ได้ตั้งค่าพิกัด สเกลจะเป็นสีเทา

ภาพที่ 4 ตั้งค่าหน่วย


เลือกView-->Data Frame Properties...

ภาพที่ 5 ตั้งค่าหน่วย


เลือก(1)Genaral-->ตังค่าMap(2)-->ตั้งค่าDisplay(3)-->Ok

ภาพที่ 6 ตั้งค่าหน่วย


สามารถเพิ่ม-ลดมาตราส่วนได้

ภาพที่ 7 ตั้งค่าหน่วย


สามารถเพิ่มมาตราส่วนได้ (เลือกตามลำดับหมายเลข)

ภาพที่ 8 ตั้งค่าหน่วย


ถ้าไม่ต้องการมาตราส่วนอันไหนก็สามารถเลือกลบได้(ตามหมายเลข)

ภาพที่ 9 ตั้งค่าหน่วย


การเช็คค่าพิกัดว่าข้อมูลใช้พิกัดอะไรอยู่ คลิกขวาที่ข้อมูล-->Properties

ภาพที่ 10 การตรวจมาตราส่วน


ซึ่งข้อมูลที่ใช้นี้จะขึ้นเป็น Undefined ซึ่งเป็นข้อมุลที่ยังไม่ได้ตั้งค่าพิกัด

ภาพที่ 11 การเช็คมาตราส่วน


เลือกArc toolbox-->Data Management Tool-->Projection and Transformations-->Define Projection

ภาพที่ 12 การเลือกเครื่องมือ Define Projection


เลือก Select

ภาพที่ 13 ตั้งค่าพิกัดให้กับข้อมูล


เลือก Projected Coordinate System

ภาพที่ 14 ตั้งค่าพิกัดให้กับข้อมูล


เลือก UTM

ภาพที่ 15 ตั้งค่าพิกัดให้กับข้อมูล


เลือก WGS 1984

ภาพที่ 16 ตั้งค่าพิกัดให้กับข้อมูล


เลือก Northern Hemisphere

ภาพที่ 17 ตั้งค่าพิกัดให้กับข้อมูล


เลือก WGS 1984 UTM Zone 47N.prj

ภาพที่ 18 ตั้งค่าพิกัดให้กับข้อมูล


เมื่อตั้งค่าหมดแล้วคลิก OK

ภาพที่ 19 ตั้งค่าพิกัดให้กับข้อมูล


เมื่อตั้งค่าหมดแล้วคลิก OK

ภาพที่ 20 ตั้งค่าพิกัดให้กับข้อมูล


การแปลงระบบพิกัดภูมิศาสตร์ หรือ โซน (Projection)


เลือก D:\55170209\Data&Program\RT ArcGIS-->Lab11-->World-->Country


ภาพที่ 1 การเลือกข้อมุล


คลิกขวาที่ Country-->Properties-->ดูข้อมุลค่าพิกัดได้ว่าเป็นค่าพิกัดอะไร?

ภาพที่ 2 การเลือกข้อมุล


เลือก Data Management Tools --> Projection and Transformations --> Feature --> Project

ภาพที่ 3 การเลือกข้อมุล


เลือกตามลำดับหมายเลข 

ภาพที่ 4 การเลือกข้อมุล


จะแสดงข้อมูลในโซนที่เราเลือก

ภาพที่ 5 การเลือกข้อมุล


จะได้ข้อมูลในโซนนั้นๆ (จะแสดงแค่โซนที่เราเลือก ถ้าต้องการให้แสดงทั้งหมด ต้องเลือกให้ครอบคลุม

ทุกโซน)



ภาพที่ 6 การเลือกข้อมุล


การแปลงพื้นหลักฐาน (Datum Transformation)


เลือก D:\55170209\Data&Program\RT ArcGIS-->Lab11--> Province_WGS84UTM47N

ภาพที่ 1 การแปลงพื้นหลักฐาน


หน้าต่างที่ได้จากข้อมูล

ภาพที่ 2 การแปลงพื้นหลักฐาน


ข้อมูลที่ได้จะมีความเหลือมล้ำกัน ไม่ซ้อนทับกันพอดี

ภาพที่ 3 การแปลงพื้นหลักฐาน


เลือก View --> Data Frame Properties

ภาพที่ 4 การแปลงพื้นหลักฐาน


เลือกข้อมูลที่เป็นเเป้าหมายที่เราจะเปลี่ยน(1) --> Transformations

ภาพที่ 5 การแปลงพื้นหลักฐาน


เลือกข้อมูล [(1)GCS_Indian_1975] -->  Into [(2)GCS_WGS_1984] --> Using [(3)None] --> (4)New

ภาพที่ 6 การแปลงพื้นหลักฐาน


แปลงเป็น WGS 1984 ค่า X = 206, Y = 837, Z = 295 (ถ้าเแปลงเป็น Indian ค่าเหมือนกันแต่ติดลบ(-))

ภาพที่ 7 การแปลงพื้นหลักฐาน


จะได้ค่าใหม่ที่เราต้องการ

ภาพที่ 8 การแปลงพื้นหลักฐาน


ข้อมูลที่ได้จะซ้อบทับกันสนิท แต่จะเป็นแค่การแปลงแบบชัวคราวเท่านั้น ถ้าต้องการให้เป็นแบบถาวรต้องทำการ Save


ภาพที่ 9 การแปลงพื้นหลักฐาน



การทำ Append 

เป็นการวมข้อมูลเข้าด้วยกันแต่จะเสียต้นฉบับ

ส้รางFolderของเราชื่อว่า Project_Ham ไว้ใน RTArcGIS

ไปที่ Lab12 > Data > Copy LU5038i และ LU5038iv (ที่เป็นโพลิกอน)มาไว้ใน Project_Ham 


ภาพที่ 1 การทำ Append


ลาก LU5038i และ LU5038iv (ที่อยู่ในFolderเรามาเปิด) > เราจะเอา LU5038iv ไปรวมกับ LU5038i 

เมื่อลากมาแล้วให้เอา LU5038i ไว้ข้างบน LU5038iv


ภาพที่ 2 การทำ Append


เปิด ArcToolbox > Data Management Tools > General > Append 

ตรงช่อง Input Datasets เลือก LU5038iv  เพราะเราจะเอาอันนี้ไปรวม

ตรงช่อง Target Datasets เลือก LU5038i 

ตรงช่อง Schema Type เลือก No_Test เพราะมันจะรวมกันได้ถึงแม้โครงสร้างทางข้อมูลจะไม่เหมือนกันก็ตาม

จากนั้นกด Ok


ภาพที่ 3 การทำ Append


ผลที่ได้ก็จะกลายเป็นอันที่ 1 ดังภาพที่ 4


ภาพที่ 4 การทำ Append



การทำ Erase

เป็นการลบหรือตัดข้อมูลข้างใน(ภายในขอบเขต) จะตัดดินให้มีรูปร่างตามขอบเขตของบ่อน้ำ

ไปที่ Lab 12 > Pathum Thani > ลาก SOILS กับ WATER ออกมา


ภาพที่ 1 การทำ Erase


เปิด ArcToolbox > Analysis Tools > Overlay > Erase

ช่อง Input Features เลือก SOILS

ช่อง Erase Features เลือก WATER 

ช่อง Output Feature Class เลือก ที่เก็บไว้ใน Project_Ham ตั้งชื่อว่า Erase_ham

จากนั้นกด Ok


ภาพที่ 2 การทำ Erase


จะได้ดังภาพที่ 3 


ภาพที่ 3 การทำ Erase



การจัดกลุ่มข้อมูลใหม่ (Reclassify)

ใช้กับข้อมูลกริด(Raster)

ไปFolderที่ชื่อว่า Prachinburi >  ลาก Prachindem30m มาเปิด 


ภาพที่ 1 การจัดกลุ่มข้อมูลใหม่


วิธีที่ 1 ในการเปิดเครื่องมือ Reclassify : เปิด ArcToolbox > 3D Analyst Tools > Raster Reclass > 

Reclassify


ภาพที่ 2 การจัดกลุ่มข้อมูลใหม่


วิธีที่ 2 ในการเปิดเครื่องมือ Reclassify : เปิด ArcToolbox > Spatial Analyst Tools > Reclass > Reclassify


ภาพที่ 3  การจัดกลุ่มข้อมูลใหม่


ช่อง Input raster เลือก Prachindem30m 

ช่อง Reclass field เลือก Value


ภาพที่ 4  การจัดกลุ่มข้อมูลใหม่


คลิกที่ Classify > Classification ช่อง Method (เป็นการเลือกวิธีการแบ่ง) เลือก classes เป็น 3 แล้วไปเลือก

ช่อง Method เป็น Manual สามารถใส่ค่าได้ที่ช่อง Break Values 

***แบบ Manual จะสามารถใส่ค่าสูงสุดของ class นั้นๆไปได้เลย


ภาพที่ 5  การจัดกลุ่มข้อมูลใหม่


การเลือกแบบ Equal Interval เป็นการแบ่งแบบมีค่าเท่าๆกันในแต่ละกลุ่ม


ภาพที่ 6  การจัดกลุ่มข้อมูลใหม่


การเลือกแบบ Quantile เป็นการแบ่งตามค่าสถิติ


ภาพที่ 7  การจัดกลุ่มข้อมูลใหม่


การเลือกแบบ Natural Breaks (Jenks) เป็นการแบ่งแบบคำนึงถึงข้อมูล


ภาพที่ 8  การจัดกลุ่มข้อมูลใหม่


การเลือกแบบ Geometrical Interval ตัวโปรแกรมจะแบ่งให้


ภาพที่ 9  การจัดกลุ่มข้อมูลใหม่


การเลือกแบบ Standard Deviation แบ่งตามค่าเบี่ยงเบนมาตราฐาน


ภาพที่ 10  การจัดกลุ่มข้อมูลใหม่


เลือกแบ่งแบบ Equal Interval > เลือก 7 classes > ok 

ช่อง Old values คือ ค่าความสูงจริง

ช่อง New values คือ ค่าใหม่ที่จะได้เป็นลำดับ สามารถเปลี่ยนได้เป็นจำนวนเต็ม

ช่อง Output raster เลือกที่เก็บแแล้วตั้งชื่อ > save > ok


ภาพที่ 11  การจัดกลุ่มข้อมูลใหม่




VDO