Xem mẫu

  1. Ch ng 3 PHÁT TRI N D LI U Thông tin mang tính a lý trên m t vùng lãnh th bao g m r t nhi u l p d li u khác nhau (thu c n v hành chánh nào, trên lo i t nào, hi n tr ng s d ng t là gì, ... ) và m i d li u này th ng c xây d ng thành t ng l p d li u riêng bi t, c g i là các d li u chuyên , v i b n c a các h ng m c t ng ng. Sau khi xây d ng các l p d li u không gian t vi c s hóa các b n , MapInfo có kh n ng b sung các s li u phi không gian (s li u thu c tính – d li u v kinh t xã h i) b ng nhi u cách. 1. LIÊN K T V I D LI U CÓ S N : D li u có s n có th ã c xây d ng v i nhi u khuôn d ng khác nhau v i ph n m r ng nh .XLS (MS Excel), .MDB (MS Access) hay .TXT (text), ... MapInfo có th s d ng c các d li u này sau khi hoàn t t th t c khai báo. Vào File > Open Table, ch n t p tin d li u theo các khuôn d ng trên (ch n ki u t ng thích trong Files of Type) trong c a s Open Table. 11. D li u d ng .XLS. (MS Excel 97/2000/XP) T ng t , ch n Microsoft Excel trong m c Files of Type thao tác v i các t p tin Excel 95/97/2000/XP. Thông th ng d li u trong Excel l y hàng trên cùng làm tên c t (vùng), vì v y trong c a s Excel Information chúng ta khai báo nh sau : Trong khung Named Range ch n Other s xu t hi n khung ghi gi i h n c a d li u. MapInfo s ki m tra và gi nh t t c vùng có thông tin u là d li u (t ô nào n ô nào), thay i v trí c a ô u tiên c a vùng th t s ch a d li u. Ví d thay vì là DanSo!A3:I20 thì i l i DanSo!A4:I20. Click OK. ánh d u vào m c Use Row Above Selected Range for Column Titles (hàng u tiên là tên các c t), r i click OK. C a s Browser xu t hi n v i d li u theo d ng hàng và c t úng nh d li u c a t p tin .XLS. Nh v y MapInfo ã t o ra 1 t p tin d ng .TAB (m t l p d li u c a MapInfo) trong cùng th m c và cùng tên v i t p tin .XLS (tr ng h p này d MapInfo 7.5 Trang 23
  2. li u thu c tính có ph n m r ng là .XLS). 13. D li u d ng .MDB (MS Access 97/2000/XP). Sau khi ch n ki u Files of Type là Microsoft Access Database (.MDB) và t p tin t ng ng, trong c a s Open Access Table ch n 1 b ng d li u phù h p v i yêu c u c a ng i s d ng. 14. D li u d ng v n b n v i d u cách. (d u tab, d u ph y, ... ) Nh p tên t p tin d ng v n b n v i Files of Type là Delimited ASCII, c a s Delimited ASCII Information xu t hi n. Trong khung Delimiter ch n Tab hay Others tùy theo d u cách trong t p tin d ng v n b n, gi m c nh trong khung File Character Set là Windows US & W. Europe (“ANSI”) và ánh d u vào m c Use First Line for Column Titles n u hàng u tiên trong t p tin d ng v n b n là tên c t. Sau khi hoàn t t th t c khai báo, MapInfo s t o ra m t t p tin v i ph n m r ng .TAB liên k t v i m t d li u theo các d ng trên hình thành m t l p d li u riêng trong MapInfo. có th thay i c u trúc c ng nh thêm b t d li u t các t p tin d ng .MDB, .XLS, .TXT, … hãy s d ng ch c n ng File > Save Copy As chuy n các l p d li u này thành d ng chu n c a MapInfo (Files of type : MapInfo (.TAB)). 2. C P NH T VÀ B SUNG D LI U : 21. B sung s li u th ng kê : M i h ng m c thu c tính c a các i t ng c b sung vào m t vùng m i và tùy theo ki u s li u khai báo thích h p trong ki u vùng. Có th nh p s li u tr c ti p trong MapInfo. Vào Windows > New Browser Window, ch n l p d li u mu n b sung thêm, s xu t hi n m t c a s d li u (Browzer) li t kê d li u theo hàng và c t, nh p s li u vào các ô thích h p. MapInfo 7.5 Trang 24
  3. Tuy v y các s li u th ng k (nh dân s , thu nh p bình quân / h , s h c sinh ti u h c, s gi ng b nh c a các xã, …) nên nh p trong các ph m m m khác (Excel ch ng h n), sau ó s c liên k t v i d li u không gian trong MapInfo. 22. B sung s li u do MapInfo tính toán c: Trong MapInfo v i các hàm và các phép toán chúng ta có th xác l p các bi u th c tính toán t ng trên t ng i t ng (các hàng trong b ng). Bi u th c trong MapInfo bao g m tên vùng c a l p d li u c m - trong ó obj là m t tên vùng c bi t ch n i t ng a lý c a các hàng trong b ng d li u - các toán t , các hàm và các giá tr tùy ch n. Giá tr c a m t chu i ký t c gi i h n trong c p d u nháy kép (“ ”). u ý : Khi nh p các giá tr ki u s , ph i chú ý n các quy nh v d u ký hi u th p phân, không c n nh p d u phân cách hàng ngàn. Riêng d u phân cách các tham s trong các hàm, ph i là d u ph y. * Các toán t trong MapInfo bao g m theo m c u tiên : () ; ^ (l y th a); d u âm (-) ; * và / ; + và - ; contains , contains entire , within , entirely within , intersects (các toán t dùng cho i t ng a lý); = , , < , > , = (các toán t so sánh); not ; and ; or (các toán t lu n lý). * Các hàm c a MapInfo, có d ng tênhàm(tham s ,…), bao g m : - Các hàm toán h c : Abs(s ) : tr v tr tuy t i c a s . Cos(s - n v : radian) : tr v cosin c a s . Sin(s - n v : radian) : tr v sin c a s . Tan(s - n v : radian) : tr v tang c a s . Int(s ) : tr v ph n nguyên c a s . Maximun(s 1, s 2) : tr v s có giá tr l n h n. Minimun(s 1, s 2) : tr v s có giá tr bé h n. Round (s 1, s 2) : tr v s 1 sau khi làm tròn theo m c s 2 (s 2 có các giá tr nh : 0.01, 0.1, 1, 10, 100, ...) - Các hàm chu i ký t : Str$(bi u th c) : tr v chu i ký t t ng ng c a bi u th c. Chr$(s ) : tr v ký t t ng ng trong theo mã ASCII. InStr(s , chu i 1, chu i 2) : tìm trong chu i 1 b t u t i v trí s , n u có chu i 2 thì tr v v trí c a chu i 2, n u không có thì tr v s 0. b t ut u chu i 1, s s là 1. Ltrim$(chu i): tr v chu i sau khi c t b các kho ng tr ng phía tr c. Lcase$(chu i) : tr v chu i v i ch th ng. Left$(chu i, s ) : tr v chu i v i s ký t bên trái. Mid$(chu i, s 1, s 2) : tr v chu i b t u t v trí s 1 và dài s MapInfo 7.5 Trang 25
  4. 2 ký t c a chu i. Proper$(chu i) : tr v chu i v i ký t u là ch hoa. Right$(chu i, s ) : tr v chu i g m s ký t t bên ph i. Rtrim$(chu i) : tr v chu i sau khi c t h t kho ng tr ng bên ph i. Ucase$(chu i) : tr v chu i ch hoa. Len(chu i) : tr v s ký t c a chu i. Val(chu i) : tr v giá tr b ng s c a chu i. - Các hàm ngày tháng : Curdate() : tr v ngày/tháng/n m ngày hôm nay (theo h th ng). Day(ngày/tháng/n m) : tr v ngày c a ngày/tháng/n m. Month(ngày/tháng/n m) : tr v tháng c a ngày/tháng/n m. Year(ngày/tháng/n m) : tr v n m c a ngày/tháng/n m. Weekday(ngày/tháng/n m) : tr v th t c a ngày trong tu n c a ngày/tháng/n m. Ch nh t có s thú t là 1. - Các hàm liên quan n d li u không gian : Area(obj, “ nv ”) : tr v di n tích c a i t ng theo donvi. CentroidX(obj) : tr v tr s kinh c a i m tr ng tâm c a i t ng. CentroidY(obj) : tr v tr s v c a i m tr ng tâm c a i t ng. Distance(x1, y1, x2, y2, “donvi”) : tr v giá tr kho ng cách gi a hai i m có t a là (x1,y1) và (x2,y2) theo n v ã ghi. ObjectLen(obj, “ nv ”) : tr v giá tr chi u dài c a i t ng theo n v ã ghi. Ch cho i t ng ng hay a giác. Perimeter(obj, “ nv ”) : tr v giá tr chu vi c a i t ng theo n v ã ghi. Ch cho i t ng a giác, ellipse. Ngoài ra MapInfo còn có m t s t khóa có th dùng trong các bi u th c : any, all, in và between...and. Ví d : - field_x = any (“TP.HCM”, “ N”, “KG”) - field_x in (“TP.HCM”, “ N”, “KG”) ⇒ t t c các i t ng mà c t field_x có giá tr là “TP.HCM”, hay “ N” hay “KG”. - field_x all (“TP.HCM”, “ N”, “KG”) - field_x not in (“TP.HCM”, “ N”, “KG”) ⇒ t t c các i t ng mà c t field_x có giá tr không là “TP.HCM”, hay “ N” hay “KG”. - field_x between 5000 and 10000 ⇒ t t c các i t ng mà c t field_x có giá tr trong kho ng t 5000 n 10000. n v tính chi u dài : mi (miles), in (inches), km, m, cm, mm, ... n v tính di n tích : sq mi (square miles), acre, sq km (km2), sq m (m2), MapInfo 7.5 Trang 26
  5. sq cm (cm2), sq mm (mm2), hectare, ... v c p nh t hay b sung t ng c t d li u m t, chúng ta s d ng ch c n ng Update Column. Vào Table > Update Colunm, c a s Update Column xu t hi n v i các m c nh sau : - Table to Update : ch n l p d li u mu n c p nh t trong s các l p d li u ãm . - Get value from table : l y giá tr t l p d li u nào? Có 2 tr ng h p : * T l p d li u mu n c p nh t : - Column to Update : ch n vùng mu n c p nh t. - Value : nh p m t bi u th c h p l . Th ng s d ng khung Assist xây d ng bi u th c. Ví d : * Tính di n tích các i t ng a lý (xã và th tr n) c a huy n Lâm Hà ? * T m t l p d li u khác : Click khung Join… xác nh c t tham chi u gi a hai l p d li u. - Column to Update : m t vùng có s n hay m t vùng m i (add new temporary column). - Calculate : cách tính toán (có th là : Value, hay các bi u th c t ng h p nh : Average, Count, Minimum, Maximum, Sum, Weighted Average (trung bình gia tr ng), Proportion Sum (t ng s theo t l ), Proportion Average (trung bình theo t l ) và Proportion Weighted Average (trung bình gia tr ng theo t l ). Ghi chú : các bi u th c Average, Count, Minimum, Sum, Weighted Average có tham s là các giá tr c a d li u; các bi u th c t l (Proportion) thì x lý các i t ng a lý. - of : th ng là m t c t hay m t bi u th c h p l . Sau cùng, click OK ti n hành c p nh t. MapInfo 7.5 Trang 27
  6. Ví d : * Calculate : Value Trong tr ng h p này, hai l p d li u có 2 c t có cùng 1 giá tr cho t ng i ng t ng ng (c t Ma_xa c a l p LHA_RGHC.TAB và c t MaSo c a l p d li u DANSO.TAB), vì v y chúng ta có th ch n trong c a s Specify Join tên c a 2 c t d li u có giá tr gi ng nhau này liên k t gi a chúng v i nhau. * Calculate : Sum Tính dân s n m 1996 c a các khu v c thu c huy n Lâm Hà ? MapInfo 7.5 Trang 28
  7. Gi nh huy n Lâm Hà có 17 xã và th tr n c chia thành 4 khu v c. Nh v y m i khu v c s bao g m m t s xã hay th tr n. Dân s c a 1 khu v c chính là t ng dân s c a các xã hay th tr n thu c khu v c ó. Tr ng h p này chúng ta khai báo trong c a s Specify Join nh sau : Vi c tính t ng s c a dân s n m 1996 s th c hi n cho các i t ng (hàng) có cùng giá tr trong c t vung c a l p d li u DANSO.TAB, sau ó gán tr s tính c này cho c t DanSo_96 c a l p d li u LHA_VUNG.TAB hàng có giá tr c a c t Stt t ng ng. * Calculate : Proportion Sum . Ví d : L p d li u VUNGBENH.TAB xác nh các vùng x y ra b nh th ng hàn trên huy n Lâm Hà vào n m 1996. Tính xem s dân trong vùng b nh là bao nhiêu ? Gi thi t m c phân b dân c là ng u trên toàn di n tích c a xã hay th tr n. M hai l p d li u VUNGBENH.TAB và LHADANSO.TAB ( ã c p nh t s li u dân s ). Vào Update Column, ch n : - L p d li u mu n c p nh t : VUNGBENH.TAB MapInfo 7.5 Trang 29
  8. - C p nh t c t : ch n c t d li u t ng ng mu n c p nh t (nên khai báo sau khi khai báo trong khung Joint và các dòng tham s bên d i. - L y d li u t l p d li u : LHADANSO.TAB. - Cách tính : Proportion Sum -c ac t : Danso_96. Click khung Join …, khai báo trong c a s Specify Join nh sau : 3. CH N VÀ K T H P D LI U THEO U KI N : 31. Ch n các it ng theo u ki n trong m tt l p d li u. Vào File > Open m l p d li u c s . Sau ó vào Query > Select, khai báo các m c trong c a s Select nh sau : M c Select Records from Table : click vào khung này và ch n l p d li u t ng ng. M c that Satisfy : nh p m t bi u th c lu n lý h p l - th ng s d ng khung Assist xây d ng và ki m tra các bi u th c c a MapInfo. Khi click Assist, c a s xây d ng bi u th c xu t hi n nh sau : MapInfo 7.5 Trang 30
  9. M c Store Results in Table : nh p tên cho l p d li u th a i u ki n trên. Có th gi m c nh là Selection. Mu n l u l p d li u này ph i vào File > Save As l u vào th m c và tên t p tin tùy ch n. Trong m c Sort Results by Column, click vào khung này và ch n tên vùng mu n s p theo thú t . M c nh là None (không). ánh d u vào Browse Result xem k t qu trong m t c a s d li u m i. N u bi u th c dài và ph c t p, có th s d ng Save Template (có ph n m rông .QRY) l u bi u th c này và s d ng Load Template dùng l i m t bi u th c ã c ghi l u. w Sau khi th c hi n 1 truy v n (query), MapInfo s tìm ki m các i t ng th a v i u ki n truy v n và t o ra các l p d li u t m th i trong b nh máy tính v i tên b t u là Query và ti p theo là s th t , ví d Query1, Query2, …; các l p d li u này s m t i khi chúng ta thoát kh i MapInfo. có th s d ng các l p d li u này v sau, chúng ta ph i l u vào a v i ch c n ng File > Save As, hay File / Save Query, r i t tên cho l p d li u t m th i mu n l u. N u không mu n l u các query thành các l p d li u c l p, mà ch là k t qu c a m t truy v n t các l p d li u ã có, chúng ta có th s d ng ch c n ng File / Save Query. Ch c n ng này s t o ra 1 l p d li u .TAB d a trên truy v n các l p d li u ã có; khi open l p d li u này, MapInfo s m l p d li u liên quan và th hi n k t qu c a truy v n ã th c hi n. V i ch c n ng này, chúng ta s không t o ra 1 l p d li u m i y d li u không gian và thu c tính nh ch c ng File / Save Copy As, nên không chi m thêm nhi u dung l ng c a a; tuy MapInfo 7.5 Trang 31
  10. v y, n u l p d li u c s d ng trong các truy v n b xóa i (delete) hay i tên (rename) thì các l p d li u có c v i File / Save Query này c ng s không truy xu t c. t V i ch c n ng Select, chúng ta xây d ng c m t l p d li u m i th a theo i u ki n ã t ra. L p d li u này th ng có ít i t ng (s hàng) h n nh ng gi nguyên c u trúc c a d li u (s c t). Chúng ta có th thay i c u trúc này theo ý c a chúng ta, nh ng MapInfo có m t ch c n ng th c hi n tr c ti p i u này, ó là SQL Select. Ngoài ra, SQL Select còn th c hi n m t s ch c n ng h u ích khác. Sau khi m m t l p d li u, vào Querry > SQL Select. Cách khai báo các m c trong c a s SQL Select nh sau : Tr c h t nên khai báo m c from Table, di chuy n cursor vào khung này và click nh p tên l p d li u; chúng ta có th nh p tr c ti p t bàn phím tên c a l p d li u này nh ng nên click khung Tables ch n. Trong m c Select Columns, n u ch n t t c các c t thì gi d u * (m c nh), n u ch ch n m t s c t thì xóa d u * r i click khung Columns ch n các c t theo d nh. Ngoài ra, các bi u th c tính toán có th c xây d ng các c t m i có th c hình thành ch a giá tr c a các bi u th c này. i u này có ngh a l p d li u m i s có s c t nh c hay ít h n và c ng có th nhi u h n. t tên cho c t m i c a m t bi u th c tính toán, ghi tên c t trong d u ngo c kép ngay sau bi u th c. Ví d : danso_87 / area(obj, “sq km”) “Mat_do_97”. Trong m c where Condition, có th tr ng hay nh p m t bi u th c lu n lý h p l. - tr ng : n u mu n ch n t t c các hàng. - M t bi u th c i u ki n : ch mu n ch n nh ng i t ng phù h p v i i u ki n này xây d ng các bi u th c tính toán trong SQL Select, ngoài các thành ph n thông th ng là tên c t, hàm và toán t , MapInfo còn có thêm các hàm th ng kê nh : Avg (trung bình c ng), Sum (t ng), Min (giá tr t i thi u), Max (giá tr t i a), WtAvg (trung bình gia tr ng) và Count ( m s i t ng t ng ng). Các hàm th ng kê này c li t kê trong khung Aggregates. K ti p trong m c Group by Columns, click khung Columns ch n c t mu n tính g p cho các giá tr gi ng nhau (subtotal) trong c t ó. M c nh là không ch n c t nào. Khai báo trong m c này th ng ch s d ng v i các hàm th ng kê k trên. Trong m c Order by Columns, click khung Columns ch n c t mu n s p theo th t . M c nh là không ch n c t nào c ch n, và n u có thì theo th t t ng d n. Mu n s p theo th t gi m d n, thêm “desc” àng sau tên c t ã ch n. Các l p d li u m i phát sinh t các hàm th ng kê là l p d li u t ng h p c a m t c t nào ó, chúng c l u trong các query. Ví d : S d ng l p d li u LHADANSO.TAB Select Column : Count(*) "So_xa", Sum(DanSo_87) "Danso_87" MapInfo 7.5 Trang 32
  11. K t qu là : So_xa Danso_87 17 57.350 Ví d : Select Column : Vung, Count(*) "So_xa", Sum(DanSo_87) "Danso_87" Group by Columns : Vung Order by Columns : Vung K t qu là : Vung So_xa Danso_87 1 5 25,935 2 4 15,237 3 5 12,420 4 3 3,758 32. K t h p v i m t l p d li u khác. k t h p hai l p d li u v i các thông tin khác nhau, chúng ta cùng m hai l p d li u này, sau ó vào Querry > SQL Select. Trong c a s SQL Select chúng ta s khai báo nh sau : M c from Tables : click khung Tables và ch n các l p d li u liên k t. Sau khi ch n các l p d li u, trong vùng where Condition s xu t hi n tên c t d li u liên k t hai l p d li u v i nhau. Có th ph i khai báo l i bi u th c u ki n vì khóa liên k t t t o này (tên c t t ng ng) không phù h p hay mu n b sung thêm 1 s u ki n khác. M c Select Columns : d u * là ch n t t c các c t (column) c a hai l p d li u. Click khung Columns và ch n các vùng mu n th hi n trong m t l p d li u m i. Có th t o c t m i v i các bi u th c tính toán hay các hàm th ng kê. Các m c khác khai báo : nh ã th o lu n ph n 31. * Ví d : L p d li u LHA_RGHC.TAB g m các i t ng a lý là xã hay th tr n, l p d li u DANSO.TAB ch a các s li u th ng kê v dân s c a các xã theo th i gian. Hai l p d li u này có 2 c t bi u di n giá tr c a 1 tính ch t c a các i ng, ó là c t LHa_RGHC.Ma_Xa và DanSo.MaSo nên có th s d ng hai c t này liên k t hai l p d li u. M hai l p d li u trên, vào Querry > SQL Select, s khai báo trong c a s SQL Select nh sau. MapInfo 7.5 Trang 33
  12. K t qu s là m t l p d li u m i g m các it ng v i các c t nh sau : 4. TÙY CH N N I DUNG TH HI N TRONG C A S D LIÊU. Khi vào Windows > New Browser Windows, ch n 1 l p d li u, c a s d li u c a l p d li u ó s xu t hi n v i t t c các c t và tên c t úng nh ã khai báo trong Table Structure. ch th hi n trong c a s này nh ng c t theo ý mu n c a chúng ta và tên các c t có th vi t l i cho rõ ràng, vào Browse > Pick Fields. Thí d , ch n xem d li u c a l p LHADANSO.TAB, trong c a s Pick Fields th c hi n nh sau. MapInfo 7.5 Trang 34
  13. - không th hi n m t hay nhi u vùng (field) : trong khung Columns in Browser ch n các vùng này - s d ng phím Shift hay Control khi ch n nhi u vùng - sau ó click vào khung Remove lo i chúng ra kh i danh sách các vùng s c th hi n. - thay i tiêu 1 c t, chúng ta á nh d u tên c t ó trong khung Columns in Browser, sau ó nh p tên m i vào m c Name trong khung Edit Browser Column. Ví d : i tên c t “TenXa_VNI” thành “Xã-Th tr n” (b ng mã VNI). - Ngoài ra, chúng ta có th th hi n thêm các vùng m i b ng cách ch n Expression trong khung Fields in Table, nh p bi u th c h p l trong c a s Expression , thí d : DanSo_96 – DTBD_96, bi u th c này c thêm vào trong m c Expression, sau ó s a l i tiêu c t (m c Name) trong khung Edit Browser Column là Dân t c Kinh nh hình trên. Click OK s hi n b ng d li u v i ki u font là VNI-Times nh sau : MapInfo 7.5 Trang 35
  14. MapInfo 7.5 Trang 36
nguon tai.lieu . vn