I have found a source of very accurate terrain elevation data for the Alpes, and want to plot it using something like ListPlot3D.
The data file is simply a list of 16bit signed integers which represent elevations in meters. There are approximately 3,000 rows of 3,000 columns, each row representing a given latitude, each column a given longitude. Points are 30 metres apart in each horizontal direction.
I’ve got all the graphing working, but am now having a problem with scale. I want my X and Y axes to show lat and long in decimal degrees, and the Z axis to plot elevation in meters.
But if you don’t scale the axes, the view is distorted from how it would look naturally: a degree of longitude at 45 degrees latitude is much shorter in length than a degree of latitude; a meter does not scale directly to degrees.
So I need to scale two of my axes as a function of the third. I know how to do the math, but I don’t know how to tell, say, ListPlot3D, how to scale the axes. Of course I could convert degrees to meters, but then my axis labels will not show lat-long, which is what I want.
Any help would be greatly appreciated.
