GDALでプログラムするのに最適な言語


20

PostGISサーバーからの地理データを処理するプログラムの作成を開始し、GDALを使用します。

あなたの経験によると、それを使ってプログラムするのに最適な言語はありますか?PerlとPythonでプログラミングできますが、再利用するコード、サンプル、ライブラリなどがより多く含まれている言語を知りたいです。


6
私はそれについて何の証拠も持っていませんが、私の考えでは、PythonにはPerlよりもはるかに多くのライブラリとユーザーがいます。それが私の投票です!
blah238

postgisで動作するアプリは既にたくさんあると思います。あなたのニーズは何かという別の質問をする場合、おそらくあなたは仕事をする余裕があります:)
フランシスコプガ

回答:


26

個人的には、PythonでGDALを使ったコーディングを楽しんでいます。それをインストールし、それがどのように機能するかを頭に入れたら、それは非常に簡単です。また、Pythonを使用すると、いくつかの非常に便利な「バッテリー付属」組み込みモジュール(os、math、string、sys、randomなど)、およびNumPy(ラスター操作に便利)などのサードパーティモジュールを利用できます。

GIS Pythonライブラリの包括的なリストについては、こちらをご覧ください:GISで重要なPythonツール/モジュール/アドインとは何ですか?)。

Python GDALバインディングの非常に優れた紹介は、次の場所にあります。

http://www.gis.usu.edu/~chrisg/python/2009/

少しの方法と読み方で最小限の時間で始められます。たとえば、シェープファイルを2行でつかむことができます。

driver = ogr.GetDriverByName('ESRI Shapefile')
datasource = driver.Open('shapefile.shp')

ドキュメント(http://www.gdal.org/annotated.html)を読み終えると、ファイルに対して何をするのも非常に簡単で、何をしているのかがわかります。

シンプルで最小限のコードで可能なことの例については、こちらをご覧ください。

http://svn.osgeo.org/gdal/trunk/gdal/swig/python/samples/


13

これはかなり主観的な質問のようです。GDAL / OGRの観点からは、基本的にライブラリの同じ機能がPythonとPerlで公開されていると言います。そのため、多くはあなたの言語設定や他のどのコンポーネントが必要かによって異なります。

私自身はPythonの男ですが、perlに代わって少し話をしたいと思います。AriJolmaが管理しているGeoInformatica環境には、GDAL / OGRとperlスクリプト作成者向けの他の便利なものが含まれています。ぜひチェックしてみてください:

http://geoinformatics.tkk.fi/


7

疑問の余地のない最高の言語はPythonです。GDALの使用以外にも多くの可能性が開かれているためです。

1)pythonを使用すると、SQLAlchemyのようなORMを使用してpostgisサーバーに接続できます。これは、データを処理し、gdal用に準備するための多くの高レベル関数を提供します。

2)ShapelyHigh Performance Geostatistics Libraryなど、他のPythonライブラリを使用してジオデータを操作できます。

3)Mapnikのような、Pythonのマップ出力用の非常に優れたバインディングがあります。

4)Geodjango(ローカルで使用できます)やQgis APIのような多くの作業を節約できるフレームワークと高レベルAPIがあります


6

Pythonへの3番目の投票。私にとって、上記の優れた答えに加えて、それは私がしばらく前にさまざまな仕事のために半ダースのスクリプト言語を知る必要があることにうんざりしていたため、ESRIがPythonをサポートするとすぐに、私はそれらをすべて落としました(ほぼ-JavascriptはPythonを支持して)すばらしいことは、私が使用している他の非GISパッケージもPythonをサポートしているため、あらゆる種類のソフトウェアのAPIからGDAL / OGRを呼び出すことができることです。Pythonは非常に高レベルの言語でもあるため、C#のようなマネージ言語でも必要なコードの約10分の1を記述します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.