Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I was mapping an area in Namibia and also tracked a lot of paths on my way with my Garmin device... so I thought it would be nice to see height differences in my area (esp. interesting in the raining-season... where is the water going to be?)... but then I came to notice, that QGIS does not support the Z-Coordinate when using Shape-Files. I have currently all the data stored as a GPX file, how can I get QGIS (1.8) to recognize the Z-Coordinate?

And yes my device supports the tracking of height, that's for sure :)

share|improve this question

4 Answers 4

up vote 6 down vote accepted

In order to have the z value of your waypoints or tracks I usually use GPS babel. In Babel you can load a GPX file and then translate it to a csv file.

enter image description here

The resulting csv will have each point of the track or each waypoint with the altitude value this is an example of what you can get. enter image description here

Since it is a csv file, you can load it in to qgis with the "add delimited text layer plugin and then save it as a shp. Hope it helps

share|improve this answer
    
There are 3 ways to your aim :D, nice! I like this one , because I know how to do it :) –  Lukas Dec 11 '12 at 9:50

Importing the GPX file with add vector layer, and selecting track_points layer, you get all collected height data in ele field. Saving that to shapefile, it is possible to change color according to the ele value, or create raster grids etc.

share|improve this answer
    
So That means if I do this I have the Z-Value in the Attribute table? That would be very helpful :)! –  Lukas Dec 11 '12 at 9:48
    
Yes, but only for point layers. I don't know if this can be achieved with line or polygon layers, since the attribute table applies to the whole object, and not the single line points. –  AndreJ Dec 11 '12 at 10:19
    
Oh... thats unfortunate! Then I also need to transform my tracks into points? How can I do this? –  Lukas Dec 12 '12 at 11:59
1  
As I wrote in my answer, use Add vector layer, instead of the GPS tools. "track_points" gives you a point layer built from the trackpoints. –  AndreJ Dec 12 '12 at 12:46

The only way that I know to visualize your data in 3 dimensions is using grass' nviz module which should be accessible via the qgis' grass plugin.

There are some video tutorials on the subject at youtube. For reference I am posting two of those:

  1. http://www.youtube.com/watch?v=xn4nOhequgk
  2. http://www.youtube.com/watch?v=ib1-mBbWkv4
share|improve this answer
    
Thanks for the links! I will try them! The GRASS ,module was also something I wanted to learn :) –  Lukas Dec 11 '12 at 9:49
    
See also grasswiki.osgeo.org/wiki/Help_with_3D –  markusN Dec 15 '12 at 14:18

Yes, it is possible without NVIZ but using a Python script in the console with Python modules like Matplotlib or Visvis. See my explanations and references in TIN Interpolation using a vector layer or Is there are QGIS plugin to allow the 3d visualisation of geological borehole data similar to the functionality of Target for ArcGIS?

3D QGIS

share|improve this answer
    
Looks nice, but you have to get the Z-Coordinates from the GPS device into a shapefile first. The GDAL GPX driver gives this advice: 'If the environment variable GPX_ELE_AS_25D is set to YES, the elevation element will be used to set the Z coordinates of waypoints, route points and track points.' I guess this can not be set inside QGIS yet. –  AndreJ Dec 15 '12 at 10:28
    
is the resulting shapefile is a 3d shapefile or a shapefile with z attribute, no problem with the method which uses the Python modules Shapely or ogr that allow to treat them. –  gene Dec 15 '12 at 21:02

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.