g.region region=swwake_10m -p d.mon x0 d.erase d.vect streams col=blue d.vect streets_wake # display symbols d.vect overpasses icon=extra/bridge size=15 fcol=red # display areas with centroids (sized 2 pixels) d.vect -c soils_wake size=2 # display areas without borders and centroids d.vect -c soils_wake type=area d.vect -c census_wake2000 disp=shape,attr attrcol=FIPSSTCO siz=5 lcol=black # display all vector mape d.slide.show -v mapsets=PERMANENT g.region swwake_30m -p d.erase d.vect.thematic -l censusblk_swwake column=HOUSEHOLDS nint=6 color=yellow-cyan d.vect.thematic -l schools_wake column=CAPACITYTO type=point size=10 nint=6 themetype=graduated_points # set the region and display DEM, roads and lakes g.region swwake_10m -p d.erase d.rast elevation d.vect roadsmajor d.vect lakes type=area fcol=cyan col=cyan # display chart d.vect.chart -c precip_30ynormals ctype=bar size=80 scale=0.6 \ column=jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec \ color=cyan,cyan,yellow,yellow,yellow,green,green,green,blue,blue,blue,cyan v.info schools_wake v.info streets_wake v.info census_wake2000 v.info -c soils_general v.info -h soils_general # update scale information to 1:24000 g.copy vect=soils_general,myvectmap v.support myvectmap scale=24000 # update organization v.support myvectmap organization="OSGeo labs" v.info myvectmap v.db.select roadsmajor g.region vect=schools_wake -p d.erase # show all schools in Wake County d.vect schools_wake col=red icon=basic/circle siz=5 # show a subset of all elementary schools in Raleigh d.vect schools_wake where="ADDRCITY='Raleigh' and GLEVEL='E'" # show table connection(s) of a map v.db.connect -p schools_wake # show attribute column names and types of a map v.info -c schools_wake # show available tables in current mapset db.tables -p # describe details of a table db.describe schools_wake # describe it in shortened form db.describe -c schools_wake # check what to delete (find all big schools) v.db.select schools_wake where="CAPACITYTO > 300" # perform reverse selection, save to new map v.extract -r schools_wake out=small_schools_wake \ where="CAPACITYTO > 300" v.db.select small_schools_wake # copy the map into your MAPSET and check for NULL g.copy vect=lakes,mylakes v.db.select mylakes v.db.select mylakes where="FTYPE IS NULL" # display the lakes, show undefined FTYPE lakes in red g.region swwake_10m d.erase d.vect mylakes where="FTYPE NOT NULL" type=area col=blue d.vect mylakes where="FTYPE IS NULL" type=area col=red # replace NULL with FTYPE WETLAND v.db.update mylakes col=FTYPE value=WETLAND \ where="FTYPE IS NULL" v.db.select mylakes v.info -c geodetic_pts # copy map into current mapset g.copy vect=geodetic_pts,mygeodetic_pts v.db.addcol mygeodetic_pts col="zval double precision" # the 'z_value' col contains 'N/A' strings, not to be converted v.db.update mygeodetic_pts col=zval \ qcol="CAST(z_value AS double precision)" \ where="z_value <> 'N/A'" v.info -c mygeodetic_pts v.db.select mygeodetic_pts col=Z_VALUE,zval # fix 0 in 'zval' to NULL (orig. 'N/A' entries in 'Z_VALUE') echo "UPDATE mygeodetic_pts SET zval=NULL WHERE zval=0" \ | db.execute v.db.select mygeodetic_pts col=Z_VALUE,zval v.db.addcol mymap col="GRASSRGB varchar(11)" # substr() extracts numbers, '||' operator appends strings echo "UPDATE mymap SET GRASSRGB = (substr(RGB_COLOR,1,3)\ ||':'||substr(RGB_COLOR,5,3)||':'||\ substr(RGB_COLOR,9,3))" | db.execute v.db.select mymap col=RGB_COLOR,GRASSRGB # copy map into current mapset for editing g.copy vect=roadsmajor,myroadsmajor # add a column and predefine its values with 55mph v.db.addcol myroadsmajor col="speedmax double precision" v.db.update myroadsmajor col=speedmax value=55 v.db.select myroadsmajor # increase speedmax to 70mph for multilane roads # a) example for SQL statement and db.execute echo "UPDATE myroadsmajor SET speedmax=speedmax+15 \ WHERE MULTILANE='yes' " | db.execute # b) alternatively, use v.db.update v.db.update myroadsmajor col=speedmax where="MULTILANE='yes'" \ value="speedmax+15" v.db.select myroadsmajor g.region nc_500m -p v.info -c precip_30ynormals d.erase d.vect precip_30ynormals disp=shape icon=basic/box d.vect precip_30ynormals disp=shape where="annual*0.03937>50" \ icon=basic/circle fcol=blue v.report zipcodes_wake option=area units=hectares # query census data at two given points v.what -a censusblk_swwake \ east_north=636982.5,218057.8,638012.2,224919.1 # create own copy, add column, fill with geology g.copy vect=overpasses,myoverpasses v.db.addcol myoverpasses column="geology varchar(10)" v.what.vect myoverpasses qvect=geology column=geology \ qcolumn=GEO_NAME # display overpasses loacted in areas in green d.vect streets_wake col=grey d.vect myoverpasses icon=extra/bridge size=10 d.vect myoverpasses disp=shape where="geology='CZig'" \ col=green siz=10 icon=extra/bridge v.db.select overpasses g.copy vect=schools_wake,myschools_wake v.db.addcol myschools_wake column="elevation double precision" # set region to raster map for query g.region rast=elevation -p v.what.rast myschools_wake rast=elevation column=elevation # verification v.info -c myschools_wake v.db.select myschools_wake column=NAMELONG,elevation g.copy vect=zipcodes_wake,myzipcodes_wake g.region vect=zipcodes_wake res=500 -p v.rast.stats vect=myzipcodes_wake rast=elev_state_500m \ colprefix=elev v.info -c myzipcodes_wake # display zipcodes with given elevation properties d.vect myzipcodes_wake disp=shape type=boundary d.vect myzipcodes_wake disp=shape type=area \ where="elev_mean<100" fcol=green d.vect myzipcodes_wake disp=shape type=area \ where="elev_range>70" fcol=brown #this is up to topology, interpolation is a separate file