タグ付けされた質問 「python」

Pythonは、多くのGISプログラムで使用されているオープンソースのインタプリタ型プログラミング言語です。

2
巨大なマルチポリゴンをポリゴンに変換する
100.000のパーツを持ついくつかの巨大なマルチポリゴンを持つシェープファイルがあります。それらを単一パーツのポリゴンに分割する最も簡単な方法は何でしょうか?QGISの「マルチパートからシングルパート」関数のようなものを探していますが、QGISが処理するにはファイルが大きすぎます。私のためにそれを行うことができるいくつかのPythonモジュールがおそらくすでにあると思います。任意のヒント?

4
GDBから.csvテーブルをエクスポートするPythonスクリプト
私はPythonプログラミングに非常に慣れていないため、csvファイルをファイルジオデータベースフィーチャクラスからエクスポートするプログラムの作成を任されています。csvには特定のフィールドのみを含める必要があり、エクスポートされるレコードは最終編集日に基づく必要があります。つまり、csvファイルは、「最終編集日フィールド」に基づいて追加された最後の機能のみを含む毎日のベースで作成されます。 私はこれをこれまでに持っています: import arcpy import os import csv import domainvalues def export_to_csv(dataset, output, dialect): """Output the data to a CSV file""" # create the output writer out_writer = csv.writer(open(output, 'wb'), dialect=dialect) # return the list of field names and field values header, rows = domainvalues.header_and_iterator(dataset) # write the field names …

4
単一の住所フィールドを4つのフィールドに分割する方法(ハウス番号、方向、名前、サフィックス)
保安官のヘリコプターのプログラムで使用できるようにするために、小包データを少しマッサージする必要があります。プログラムでは、フィールド内に次のいずれかの住所形式が必要です。 現在、住所は1つのフィールドにあります。例:1234 W Main St. フィールドをこれらの望ましい形式のいずれかに分割することを自動化する方法はありますか? 2つのフィールド形式は、数値の後に分割を呼び出すだけで簡単になると想像できますが、1st Aveなどの道路でも問題が発生する可能性があります。

1
ArcGISでmatplotlibがインストールされるのはなぜですか?
今日、ArcGIS Desktop 10.2.2と64ビットのバックグラウンド処理ツールにアップグレードしたところ、numpyとmatplotlibの両方がPythonと共にインストールされていることに気付きました。実際、10.2.1の「新機能」セクションでは、次のように述べています。 ArcGIS 10.2.1は、Python 2.7.5を含むようにアップグレードされました。サードパーティのPythonライブラリもアップグレードされました。NumPyが1.7.1に、matplotlibが1.3.0にアップグレードされました。 ArcGISには、以下のようなnumpyを使用する多くのツールがあることを理解しています。 NumpyArrayToRaster RasterToNumpyArray データアクセスモジュールの多数のツール。 ArcGISのツールのいずれかがmatplotlibモジュールを直接利用していますか?それとも、ArcMapで可能なものよりも見栄えのよいチャートやグラフなどを作成したい場合に備えてインストールされますか?


2
フィオナ:各フィーチャの範囲(境界)を取得する
フィオナで各機能の範囲を調べるために探していましたが、方法がわかりませんでした。 私は以下のようなことをするために遠くまで努力しました import fiona with fiona.open('countries/ne_10m_admin_0_countries.shp', 'r') as source: for f in source: geom = f['geometry'] print geom このためのメソッドをf変数レベルで取得することを期待していました。ドキュメントを読んだ後、fが純粋なpythonレコードであることがわかりました。最後に、Fionaを使用して各フィーチャジオメトリの範囲(または境界ボックス)を取得するにはどうすればよいですか? PS:私はすでに純粋なGDAL / OGR Pythonソリューションを知っているので、Fionaソリューションを期待してください
8 python  fiona 

3
PostGIS:OGRでジオメトリWKBを解析
LineStringPostGISからジオメトリを引き出してOGR(python bindinds)で解析しようとしています。 from osgeo import ogr import psycopg2 connection = psycopg2.connect("...") cursor = connection.cursor() query = "SELECT geom FROM points LIMIT 1" cursor.execute(query) row = cursor.fetchone() wkb = row[0] geom = ogr.CreateGeometryFromWkb(wkb) cursor.close() connection.close() 私はもう試した: wkb = bin(int(row[0], 16)) そして: SELECT ST_AsEWKB(geom) FROM points LIMIT 1 OGRはそれを解析したくありません。次のエラーを出し続けます: ERROR 3: OGR …

2
Pythonジオプロセシングサービスで外部ファイルを呼び出すにはどうすればよいですか?
Rスクリプトを呼び出し、出力をPythonに読み込むPythonスクリプトを作成しました。このツールはArcGIS Desktop(10.2.1)で実行でき、正常に動作します。ジオプロセシングサービスとして公開すると、Rスクリプトに到達すると失敗します。ファイルパスを確認しましたが、問題ありません。ジオプロセシングサービスから外部スクリプトを呼び出すこともできますか?これが私のコードです。 import sys, os, arcpy arcpy.AddMessage("Loaded Python Imports...") try: #User Input lat = arcpy.GetParameterAsText(0) long = arcpy.GetParameterAsText(1) arcpy.AddMessage("LAT: " + "".join(lat)) arcpy.AddMessage("LONG: " + "".join(long)) #Create R Command rScript = "test.R" args = " ".join([lat, long]) RCMD = "R --slave --vanilla --args " cmd = RCMD + args + …

1
PyQGISを使用したシェープファイルのレンダリングとラベル付け
QGIS API for pythonの操作でいくつかの問題が発生しています。QGISのpythonコンソールでの作業がより快適になりましたが、QGISの外部でコードを実行しようとすると問題が発生します。 基本的に、シェープファイルを取得し、指定された属性名に基づいてラベルを付け、画像をレンダリングしたいと思います。コードはQGISで機能しますが、QGISの外部では機能しません。だから私の問題はどこから来ているのですか? import sys import qgis import PyQt4 from qgis.core import * from qgis.utils import * from qgis.gui import * from PyQt4.QtCore import * from PyQt4.QtGui import * #initialize QGIS QgsApplication.setPrefixPath( r"C:\OSGeo4W64\apps\qgis", True ) QgsApplication.initQgis() #Add layer to instance file = QgsVectorLayer("Good Shape File", "BMAS", "ogr") QgsMapLayerRegistry.instance().addMapLayer(file) …

1
埋め込みマーカー付きのFoliumインタラクティブマップの共有
私は、論文の研究に大きな可能性を秘めたいくつかのPythonパッケージを実験しています。私はほとんどすべてのためのパンダを使用しているので、geopandasは(パッケージの機能の範囲内の)空間データを扱うための自然な選択だった、とのインタラクティブな性質foliumはある...甘いです。 いずれにせよ、私が作成したマップを、IPython Notebookを使用していない、またはIPython Notebookに精通していない他の人々と共有できるようにしたいと思っています。私のテストケースは、DCの交通カメラの位置をプロットしています。(シェープファイルは、ディストリクト情報の新しい成長中のソースであるopendatadc.orgを介してDCGISによって一般に提供されます。)ノートブックビューアは明白な選択のように見えましたが、私のレンダリングされた要点からわかるように、マップは1)静的です、および2)最終的な形式でのみ表示されます。(マーカーは最初のマップに表示されていても、最後のマップまで追加されませんでした。) 次に、インタラクティブなグラフィックスのためにMike Bostockの素晴らしいビューアbl.ocks.orgを活用できると思いました。ただし、マップがインタラクティブになっている間、マーカーが消えているため、何か不足しています。 誰かがこの問題に遭遇しましたか?どんな助けでも確かにいただければ幸いです。

3
ModelBuilderの反復機能選択に相当するPythonとは何ですか?
私のデータは2つのフィーチャクラスで構成されています。 ポイント=木を表すポイント ポリゴン=キャノピーの面積による面積を表すポリゴン。FCの各ポリゴンには、属性にキャノピー測定値があります。 私は以下を達成しようとしています: ポリゴンフィーチャの下のポイントを選択します 各ポリゴンの下のポイントについて、ポリゴン属性に基づいてポイントのX%を削除します スクリーンショット(図1)は、反復機能選択と呼ばれるModelBuilder専用ツールを示しています。 機能をSelectLayerByLocation_managementコマンドに渡すために、機能クラスの機能を反復処理する正しいPythonスクリプトメソッドは何ですか? 図2は、select by locationの出力を示しています。4つのレイヤーはすべて同じです。これは、キャノピーの%測定でポイントを削除しようとすると問題になります。 これは私がこれまでに試したことです: import arcpy from arcpy import env env.overwriteOutput = True env.workspace = r'C:\temp_model_data\OutputData' outWorkspace = env.workspace # The polygons have canopy % data in attributes polygons = r'C:\temp_model_data\CanopyPercentages.shp' points = r'C:\temp_model_data\points_20_2012.shp' if arcpy.Exists("pointsLayer"): print "pointsLayer exists already" else: arcpy.MakeFeatureLayer_management …

1
追加する前に、フィーチャクラスまたはテーブルに特定の名前のフィールドが含まれているかどうかを確認するにはどうすればよいですか?
シェープファイルに特定のフィールドがあるかどうか、およびフィールドを追加しないかどうかを確認するスクリプトを作成しようとしています。フィールドを表示するために取得しますが、ループは各フィールドを通過するため、指定されたフィールドが存在しない場合は常に新しいフィールドが作成されます。でもそこにあるなら、そこにあると言って欲しいし、新しいフィールドを作るのではないなら。これまでのところ私のコードはただ言う: "not filled in yet" "not filled in yet" "not filled in yet" "cities.shp" "not filled in yet" (この原因で出力されるフィールドは5つあります) これまでの私のコード: fieldList = arcpy.ListFields("cities.shp") for field in fieldList: if field.name == "CAPITAL": print "cities.shp" else: "then add new field"

1
GIS分析にPython 3ライブラリを選択しますか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 12か月前に閉鎖。 私はPython 3で空間データ分析を実行しようとしています。Python3のGISに最適なライブラリは何かと思っていました。FionaライブラリはPython 3.3で開発されましたが、ShapelyのPython 3+バージョンはまだ開発中です。他のライブラリはPython 3に移植されていますが、それらがPython 2のライブラリと比較して徹底的にテストおよび検証されているかどうかはわかりません。 私が必要とする基本的な機能は次のとおりです。 シェープファイルまたはGeoJSONのマッピング ポリゴンをポイントとラインに関連付ける ベクターデータとラスターデータのマッピング いくつかの提案を提供できますか?

2
Esriサーバーで実行されているジオプロセシングスクリプトから現在のジョブIDにアクセスする方法
ESRI 10.2で実行されているジオプロセシングスクリプトの現在のジョブIDにプログラムでアクセスしたい。スクリプトは、スクリプトの呼び出し元ではなく、ジョブIDを知る必要があるものです。 検索中に、ジョブIDを使用してジョブ送信要求がどのように返されるかを示す例をたくさん見ました。これは私が欲しいものではありません。 サーバーで実行されているスクリプトで、ジョブIDをログに含めたいのですが、スクリプトでジョブを取得する方法がわかりません。最初にチェックしましたがarcpy.env、何も表示されませんでした。他にどこを見ればいいですか?

3
凹面ポリゴンの対脚距離(またはポリゴンフェッチまたはポリゴン直径)
ArcMap内に実装されたPythonのいくつかのクラスの例に取り組んでおり、ポリゴン内の正反対の距離を計算しています。これは凸型ポリゴンではかなり日常的ですが、凹型ポリゴンでは、完全にポリゴン内になく、ポリゴンの境界上または交差していないソリューション(境界点を結ぶ光線によって形成される)を除外したいと思います。定義を間違って解釈したのか、それともこの獣は別の名前で通じているのか。 これらの2つのポリゴンを考えます pnts = [[0,0]、[0,1]、[1,4]、[3,5]、[5,4]、[4,1]、[0,0]]#閉ループ凸 pnts = [[0,0]、[2,1]、[1,4]、[3,5]、[5,4]、[4,1]、[0,0]]#閉ループ凹多角形 私の解釈では、ポイント0,0は、それと他のポイントを接続するベクトルがポリゴンと自己交差しているか、ポリゴンの境界上にあるため、それに関連付けられている正反対の距離を持つべきではありません。 誰かが定義や潜在的な解決策について何か明確化をしているなら、私はそれを感謝します。 凸多角形と目的の線(赤で表示)のビジュアルが囲まれています(ポイント0からのサンプルベクトルのみが表示されています)。 凸型の例では、最初の点には対蹠ベクトルがありませんが、2番目の点にはあります。 編集私はウェブ上で「ポリゴンフェッチ」または「ポリゴン直径」を使用した検索に成功しました。これが私が求めているものだと思います。

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