Xem mẫu
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- - 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
- 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
- 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
- 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
- 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
- - 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
- MapInfo 7.5 Trang 36
nguon tai.lieu . vn