153GIS1 - 11. cvičení - GRASS GIS
Stránka obsahuje řešení úloh z 153GIS1 2008 - 11. cvičení v GRASS GIS. Lokace 'gis1' ke stažení zde.
Poznámka: Vektorovou vrstvu 'obce' je potřeba před dalším zpracováním vyčistit - viz GRASS GIS - Konzistence vektorových dat.
1.
- Kolik obcí začínající písmenem ‘K’ mělo v roce 2001 přes 5000 obyvatel?
db.select sql="SELECT count(*) FROM obce where OB01 > 5000 AND NAZEV LIKE 'K%'"
2.
- Která ORP má největší rozlohu a kolik to je (v km2) ?
v.db.addcol • v.to.db • db.select
v.db.addcol map=obce columns="area double precision"
v.to.db map=obce option=area column=area units=kilometer
db.select sql="SELECT NAZORP,sum(AREA) FROM obce GROUP BY NAZORP ORDER BY sum(AREA) DESC LIMIT 1"
3.
- Která ORP obsahuje nejvíc obcí a kolik to je ?
db.select sql="SELECT NAZORP,count(*) FROM obce GROUP BY NAZORP ORDER BY count(*) DESC LIMIT 1"
4.
- Kolik procent území kraje zabírá Brno (na setiny procenta)?
db.select sql="SELECT 100*(area/(SELECT sum(AREA) FROM obce)) FROM obce WHERE NAZEV='Brno'"
5.
- Jaká je délka železnic na území Brna (v km) ?
v.extract • v.overlay • v.db.addcol • v.to.db • db.select
v.extract input=obce output=brno where="NAZEV='Brno'"
v.overlay ainput=zelez atype=line binput=brno btype=area output=zelez_brno operator=and
v.db.addcol map=zelez_brno columns="length double precision"
v.to.db map=zelez_brno opt=length column=length
db.select sql="SELECT sum(length) FROM zelez_brno"
6.
- Kolika obcemi prochází železnice ?
v.select ainput=obce btype=area binput=zelez btype=line out=obce_zelez
v.info -t map=obce_zelez | grep centroids
7.
- Jaká je výměra území s nákazou (na celé km2) ?
v.db.addtable • v.to.db • db.select
v.db.addtable map=nakaza columns="area double precision"
v.to.db map=nakaza opt=area column=area units=kilometers
db.select sql="SELECT sum(area) FROM nakaza"
8.
- Kolik obcí nákaza zasáhla ?
v.select ainput=obce atype=area binput=nakaza btype=area output=obce_nakaza
v.info -t map=obce_nakaza | grep centroids
9.
- Kolik chovných stanic nákaza zasáhla ?
v.in.ascii • db.select • v.info
cat stanice.csv | grep -E '^[0-9]' | awk -F',' '{print $1,"-"$2,"-"$3}' | v.in.ascii out=stanice x=2 y=3 cat=1 fs=' '
v.select ainput=stanice atype=point binput=nakaza btype=area out=stanice_nakaza
v.info -t map=stanice_nakaza | grep points
10.
- Kolik chovných stanic je dál než 5 km od nejbližší železnice ?
v.db.addtable • v.distance • db.select
v.db.addtable map=stanice columns="zelez_dist double precision"
v.distance from=stanice from_type=point to=zelez to_type=line upload=dist column=zelez_dist
db.select sql="SELECT count(*) FROM stanice WHERE zelez_dist > 5000"
11.
- Na které parcele (číslo podle WMS ČÚZK) leží bod o souř. (1160000, 600000) ?
v.in.ascii • g.region • r.in.wms
echo "-600000|-1160000" | v.in.ascii output=bod
g.region vect=bod n=n+500 s=s-500 w=w-500 e=e+500
r.in.wms mapserver=http://wms.cuzk.cz/wms.asp layer=RST_DKM out=dkm