РЕДАКТИРОВАТЬ: Я думаю, я бы использовал привязки Python qGIS: http://www.qgis.org/wiki/Python_Bindings
Это самый простой способ, о котором я могу думать. Я помню, что рука катила что-то раньше, но это ужасно. qGIS будет проще, даже если вам придется выполнить отдельную установку Windows (чтобы заставить python работать с ним), а затем настроить сервер XML-RPC для запуска его в отдельном процессе python.
Если вы можете заставить GDAL правильно растеризоваться, это тоже здорово.
Я некоторое время не использовал gdal, но вот мое предположение:
burn_values
для ложного цвета, если вы не используете Z-значения. Все, что находится внутри вашего полигона, - [255,0,0]
(красный), если вы используете burn=[1,2,3],burn_values=[255,0,0]
. Я не уверен, что происходит с точками - они могут не строить.
Используйте gdal.RasterizeLayer(ds,bands,layer,burn_values, options = ["BURN_VALUE_FROM=Z"])
, если хотите использовать значения Z.
Я просто извлекаю это из тестов, на которые вы смотрели: http://svn.osgeo.org/gdal/trunk/autotest/alg/rasterize.py
Другой подход - вытащить объекты многоугольника и нарисовать их, используя фигурные формы, что может быть не очень привлекательно. Или посмотрите на geodjango (я думаю, что он использует openlayers для отображения в браузерах, используя JavaScript).
Кроме того, вам нужно растеризовать? Экспорт в PDF может быть лучше, если вы действительно хотите точность.
На самом деле, я считаю, что использовать Matplotlib (после извлечения и проецирования функций) было проще, чем растеризацию, и я мог получить гораздо больший контроль.
EDIT:
Подход более низкого уровня здесь:
http://svn.osgeo.org/gdal/trunk/gdal/swig/python/samples/gdal2grd.py\
Наконец, вы можете перебирать полигоны (после преобразования их в локальную проекцию) и строить их напрямую. Но лучше не иметь сложных многоугольников, иначе у вас будет немного горя. Если у вас есть сложные полигоны ... вам лучше использовать shapely и r-tree из http://trac.gispython.org/lab, если вы хотите свернуть свой собственный плоттер.
Геоджанго может быть хорошим местом, чтобы спросить ... они будут знать намного больше, чем я. У них есть список рассылки? Вокруг также много экспертов по картированию Python, но ни один из них, похоже, не беспокоится об этом. Я предполагаю, что они просто строят это в qGIS или GRASS или что-то в этом роде.
Серьезно, я надеюсь, что кто-то, кто знает, что они делают, может ответить.