153GIS1 - 11. cvičení - GRASS GIS: Porovnání verzí

Z GeoWikiCZ
m (→‎11.: + grass)
m (1-6 source)
Řádek 9: Řádek 9:
;Kolik obcí začínající písmenem ‘K’ mělo v roce 2001 přes 5000 obyvatel?
;Kolik obcí začínající písmenem ‘K’ mělo v roce 2001 přes 5000 obyvatel?


{{GrassPrikaz|db.select}} sql="SELECT count(*) FROM obce where OB01 > 5000 AND NAZEV LIKE 'K%'"
{{GrassPrikaz|db.select}}
 
<source lang="bash">
db.select sql="SELECT count(*) FROM obce where OB01 > 5000 AND NAZEV LIKE 'K%'"
</source>


==== 2. ====
==== 2. ====
Řádek 15: Řádek 19:
;Která ORP má největší rozlohu a kolik to je (v km2) ?
;Která ORP má největší rozlohu a kolik to je (v km2) ?


{{GrassPrikaz|v.db.addcol}} map=obce columns="area double precision"
{{GrassPrikaz|v.db.addcol}} {{bullet}} {{GrassPrikaz|v.to.db}} {{bullet}} {{GrassPrikaz|db.select}}
{{GrassPrikaz|v.to.db}} map=obce option=area column=area units=kilometer
 
{{GrassPrikaz|db.select}} sql="SELECT NAZORP,sum(AREA) FROM obce GROUP BY NAZORP ORDER BY sum(AREA) DESC LIMIT 1"
<source lang="bash">
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"
</source>


==== 3. ====
==== 3. ====
Řádek 23: Řádek 31:
;Která ORP obsahuje nejvíc obcí a kolik to je ?
;Která ORP obsahuje nejvíc obcí a kolik to je ?


{{GrassPrikaz|db.select}} sql="SELECT NAZORP,count(*) FROM obce GROUP BY NAZORP ORDER BY count(*) DESC LIMIT 1"
{{GrassPrikaz|db.select}}
 
<source lang="bash">
db.select sql="SELECT NAZORP,count(*) FROM obce GROUP BY NAZORP ORDER BY count(*) DESC LIMIT 1"
</source>


==== 4. ====
==== 4. ====
Řádek 29: Řádek 41:
;Kolik procent území kraje zabírá Brno (na setiny procenta)?
;Kolik procent území kraje zabírá Brno (na setiny procenta)?


{{GrassPrikaz|db.select}} sql="SELECT 100*(area/(SELECT sum(AREA) FROM obce)) FROM obce WHERE NAZEV='Brno'"
{{GrassPrikaz|db.select}}
 
<source lang="bash">
db.select sql="SELECT 100*(area/(SELECT sum(AREA) FROM obce)) FROM obce WHERE NAZEV='Brno'"
</source>


==== 5. ====
==== 5. ====
Řádek 35: Řádek 51:
;Jaká je délka železnic na území Brna (v km) ?
;Jaká je délka železnic na území Brna (v km) ?


{{GrassPrikaz|v.extract}} input=obce output=brno where="NAZEV='Brno'"
{{GrassPrikaz|v.extract}} {{bullet}} {{GrassPrikaz|v.overlay}} {{bullet}} {{GrassPrikaz|v.db.addcol}} {{bullet}} {{GrassPrikaz|v.to.db}} {{bullet}} {{GrassPrikaz|db.select}}
{{GrassPrikaz|v.overlay}} ainput=zelez atype=line binput=brno btype=area output=zelez_brno operator=and
 
{{GrassPrikaz|v.db.addcol}} map=zelez_brno columns="length double precision"
<source lang="bash">
{{GrassPrikaz|v.to.db}} map=zelez_brno opt=length column=length
v.extract input=obce output=brno where="NAZEV='Brno'"
{{GrassPrikaz|db.select}} sql="SELECT sum(length) FROM zelez_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"
</source>


==== 6. ====
==== 6. ====
Řádek 45: Řádek 65:
;Kolika obcemi prochází železnice ?
;Kolika obcemi prochází železnice ?


{{GrassPrikaz|v.select}} ainput=obce btype=area binput=zelez btype=line out=obce_zelez
{{GrassPrikaz|v.select}} {{bullet}} {{GrassPrikaz|v.info}}
{{GrassPrikaz|v.info}} -t map=obce_zelez | grep centroids
 
<source lang="bash">
v.select ainput=obce btype=area binput=zelez btype=line out=obce_zelez
v.info -t map=obce_zelez | grep centroids
</source>


==== 7. ====
==== 7. ====

Verze z 19. 10. 2009, 21:41

Stránka obsahuje řešení úloh z 153GIS1 2008 - 11. cvičení v GRASS GIS.

1.

Kolik obcí začínající písmenem ‘K’ mělo v roce 2001 přes 5000 obyvatel?

db.select

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.addcolv.to.dbdb.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

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

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.extractv.overlayv.db.addcolv.to.dbdb.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.selectv.info

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 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 ?
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 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) ?
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