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

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

3
Pythonを使用してQGISマップの範囲を設定する
Python / QGISで、マップを作成するだけのスタンドアロンアプリケーションを作成しています。 ベクター/ラスターレイヤーを読み込み、シンボルを設定し、範囲を設定したい 現時点ではそれだけです! 現在、私はここで概説されている単純なレンダリング手法を使用しています:http : //www.qgis.org/pyqgis-cookbook/composer.html#simple-rendering しかし、私はこのコードを特定の範囲を定義するように適合させることに失敗しました。以下のコードを提供します。 範囲を変更する方法を示す唯一の例は、MapCanvasの作成です。...しかし、これが非常に単純なマップを作成しているだけであることを考慮して、これが私がしたいことであるかどうかはわかりません...そして、それはまったく新しい複雑なセットを導入するようです。「シンプルなレンダリング」技術を介して範囲を定義する簡単な方法は確かにありますか? ベッキー from qgis.core import * from qgis.utils import * from PyQt4.QtCore import * from PyQt4.QtGui import * from PyQt4.QtCore import QFileInfo, QSettings QgsApplication.setPrefixPath('/Applications/QGIS-1.9.app/Contents/MacOS', True) QgsApplication.initQgis() province = QgsVectorLayer('/filepath/Province_studyUTM36S.shp' , 'layer', 'ogr') town = QgsVectorLayer('/filepath/TownPolygons_UTM36S.shp' , 'layer', 'ogr') road = QgsVectorLayer('/filepath/Roads_UTM36S.shp' …
8 qgis  python  pyqgis 

1
ジオメトリ投影速度テスト
最近、ogr / gdalに付属するOGRプロジェクションクラスを使用していますが、pyprojが推奨されたので、試してみようと思いました。切り替えるかどうかを判断するために、速度テストを行いました。以下は、2つをテストするために思いついた小さな(ほとんど)再現可能な例です。このテストが完全に公正であるかどうかはわかりませんので、コメントや推奨事項を歓迎します! 最初にインポートして、平等なプレイフィールドから始めることを確認します。 from pandas import Series # This is what our geometries are stored in from shapely import wkb import functools from shapely.geometry import shape from osgeo import ogr # The following two imports are the important ones from pyproj import Proj, transform from osgeo.osr import SpatialReference, CoordinateTransformation …

3
PythonスクリプトがArcGIS(arcmapまたはサーバー上)またはスタンドアロンのPythonスクリプトから実行されているかどうかの確認
デバッグのために、スクリプトがスタンドアロンまたはArcGISツールとして実行されることを確認するハードコードされた条件を作成しました。とにかくこれを実行時に推測することはありますか?例:環境変数、グローバル変数など 例えば dryRun= 1 if dryRun: par= 'Hello' else: par= arcpy.GetParameterAsText(0) # Do something


3
Rで多くのラスターを効率的に読み取って再分類しますか?
私はメキシコ湾の波の状態の適合性分析を作成するように命じられました。約8 MBのラスターファイルが2千個ほどあります(2438列、1749行、1 kmのセルサイズ)。ラスターファイルのパラメーターは波の周期です。if 4<= wave period <=9 then make cell = 1、else cell = 0のようにすべてのラスターを再分類します。次に、すべてのラスターを最終ラスターに合計し、ラスターの総数で除算して、適切な観測の合計パーセンテージと一部のESRI互換形式へのエクスポート結果...必要に応じて浮動小数点をサポートできるものかもしれません。私はPythonもRもあまり操作していませんが、オンラインで検索した後、これらの言語の1つでこのプロセスを実行することは理にかなっているようです。私はこれまでにRでいくつかのコードを考え出しましたが、これを機能させる方法について混乱しています。 library(rgdal) raster_data <- list.files(path=getwd()) #promt user for dir containing raster files num_files <- length(raster_data) for (i in raster_data) { #read in rasters my_data <- readGDAL(raster_data[i]) この時点で、このループ内でデータの再分類と集計を開始する必要があるかどうかについて混乱しています。そうでなければ、コンピュータのメモリが不足する可能性があると思いますが、確信が持てません。また、データを再分類する方法についてもわかりません。 オンラインでの調査ではreclass(my_data, c(-Inf,3,0, 4,9,1, 10,Inf,0))、を使用すると思いますが、それは正しく見えますか? そして、要約するためにsum(stack(my_data))、私はそれを使用し、どういうわけかそれを出力します。また、これがより効率的に実行されるか、Pythonで記述されている場合は、私もそれを受け入れます。プログラミングに関しては、私は本当に初心者です。
8 python  raster  r 

2
QGISでソースが変更された場合、ラスターレイヤーを自動的に再読み込みする方法は?
ソースが変更された場合、ラスターレイヤーを自動的に再読み込みする方法 (パスは同じですが、ソースファイル内が変更されています) 私が使う: qgis.utils.iface.mapCanvas().refresh() しかし、レイヤーは更新されません。 ### マップは再描画されていますが、同じ画像がまだあります(ソースファイルがディスク上で変更されています) 私が使う: layers = qgis.utils.iface.legendInterface().layers() for layer in layers: layer.triggerRepaint()
8 qgis  python  pyqgis 

1
Python GDAL:他のファイルからの投影でラスターとして配列を保存
データの配列があり、データポイントごとに緯度と経度がわかっています。私が持っている他のラスターと同じ投影法でGTiffとして保存したいと思います。これは私がこれまでに試したことですが、運はありません。 import numpy as np import gdal from gdalconst import * from osgeo import osr def GetGeoInfo(FileName): SourceDS = gdal.Open(FileName, GA_ReadOnly) GeoT = SourceDS.GetGeoTransform() Projection = osr.SpatialReference() Projection.ImportFromWkt(SourceDS.GetProjectionRef()) return GeoT, Projection def CreateGeoTiff(Name, Array, driver, xsize, ysize, GeoT, Projection): DataType = gdal.GDT_Float32 NewFileName = Name+'.tif' # Set up the dataset …
8 python  gdal 

1
Python GDAL:古いものからの投影を使用して新しいラスターを書き込みます
ラスターイメージを配列として読み込んだ場合、配列の値に変更を加えます。次に、配列を元の配列と同じ投影情報でラスターとして保存するにはどうすればよいですか? 特に、火星のISIS3キューブの処理を行っています。これらは、すばらしいSetWellKnownGeogCSオプションのいずれにも投影されません。おそらくこれは私の問題を幾分珍しいものにしますが、私の解決策をすべて同じように文書化する価値があると思いました。
8 python  gdal 

2
ArcObjectsスクリプトの実行中に生成されるレイアウトビューの謎の緑の線とは何ですか?
ArcObjectsの第一人者が私に、ページレイアウトのこれらの緑の線は何であり、何をすべきか、またはすべきでないので、それらが表示されないのか教えてもらえますか?添付の画像を参照してください。 私はPythonからArcObjectsを使用しました。私のスクリプトは、データフレームグリッドと経緯線をグラフィックスに変換しています。その結果、単一の要素(テキスト、行など)を再生するためにそれらを抽出する必要があるグループ要素を受け取ります。ただし、この操作(3つの個別のグリッドに対して実行されます)の後に、GraphicContainerの一部ではない、神秘的な緑色の線が表示されます。実際、緑の線は、変換と1経緯線(WGS)からの抽出後にのみ表示されます。 いくつかのガイダンスがあり、ここで働く、それらを取り除く(カット&ペーストまたは削除して、すべてのページ要素を元に戻す)を取得する方法について。ただし、そもそもそれらは避けたい。また、切り取りと貼り付けのいくつかの構成を行った後、3つの画像要素(右下隅)を削除して復元すると、緑色の線が消えることを確認しました。 これに責任があると思われるコード: pGCL.Reset() #reset graphics containere pElem = pGCL.Next() while pElem: pEP3 = CType(pElem, esriCarto.IElementProperties3) if pEP3.Name == '' and pEP3.Type == 'Group': pGE = CType(pElem, esriCarto.IGroupElement3) pGE_no = pGE.ElementCount for i in range(pGE_no): if pGE.ElementCount > 0: pGEe = pGE.Element[0] pGCL.MoveElementFromGroup(pGE, pGEe, 0) else: break pElem = …

2
ArcGIS ModelBuilderを使用したフロントランドの識別
私は市役所で働いています。土地の正面を特定する必要があります。ここでは、私の国では「TESTADA」または「FRENTE DE LOTE」と呼んでいます。正確な用語が英語で見つかりませんでした。 フロント・オブ・ア・ランドは、地面の入り口近くのラインです。つまり、家の入り口です。玄関口、ポート番号付きです。以下の画像の例を示します。 前の地図: 地形の最前線で後でマップします-あるはずです: LOTにはFRONT OF LANDが1つだけあります。コーナーではメインストリートです。歴史的建造物のため古い建物がそのまま残っています。現在、FRONT LANDのこれらのラインを手動で行っています。その一部を自動化したいと思います。それはModelBuilderを使用している可能性があります。 要するに: In:LAYER OF LAND、LAYER STREET、BUILDING LAYER。 出力:FRONTS OF LAND LINESのLAYER。 フロントロットの別の例: FRONT OF LANDという用語は、プロパティのフロントを指します。家の入力は彼のフロントです。

2
ArcGIS 10 / Pythonでポリゴンのスパイクを削除するにはどうすればよいですか?
下の図では、TINから抽出された急勾配を表すポリゴンレイヤーを確認できます。ポリゴンにはスパイクがたくさんあります。残りの境界線がまったく同じ場所にある間に、これらのスパイクを削除したいと思います。これは、Pythonスクリプトで、arcpy関数またはPython関数を使用して行います。 詳細情報:ArcGIS 10.0、Python 2.6.5、ポリゴンレイヤーはGDBにあります

2
QGIS Pythonコンソールを使用して、単純なレイヤークエリとpng出力を反復処理する方法を教えてください。
QGISコーディングは本当に初めてで、クエリビルダーウィンドウのアクションを実行するためのapiクラス/関数(特に)を見つけるのに苦労しています。 私は基本的にこれをやろうとしています: n = 1から200まで繰り返す... field_id = nであるlayerAのクエリ レイヤーBにクエリを実行し、field_id = n field_id = nであるlayerCのクエリ img_n.pngとして保存 かなりシンプルだと思いますが、GUIで手作業で行うのは本当に大変なことです。
8 qgis  python  pyqgis  query  png 


2
CADデータを読み取ってポリゴンの範囲を見つけるPythonスクリプト
Civil 3D 2012とArcGIS for AutoCAD 300を使用しています。図面内のポリゴンの範囲を読みたいのですが。A4A300のフィーチャクラス=境界。CADレイヤーはPROP-BNDYであり、サイトの境界であるため、そのレイヤーにはポリゴンが1つしかありません。ポリゴンを一時的なシェープファイルに変換し、読み取ってから削除する必要がありますか?ラスターイメージをクリップするために、境界範囲と全方向の定数を使用します。このプロセスには、ユーザー入力は必要ありません。ループするディレクトリは30個あり、各ディレクトリに図面ファイルがあり、各図面にポリゴンがあります。* map.dwgファイルが含まれているディレクトリのリストを作成するためのpythonルーチンがあり、ラスターのクリッピングに精通していますが、dwgファイルでポリゴンの範囲を読み取る方法がわかりません。あなたの助けは大歓迎です!!

1
GDAL / OGRの「警告」を検出するには?
GDAL / OGRプログラムを使用してバッチスクリプトを実行すると、値1を確認することでエラーが発生したかどうかを検出できます。ERRORLEVEL Pythonまたは.NETでGDAL / OGRを使用すると、エラーが発生すると例外が発生します。 質問:実行中にが発行された かどうかをどのように検出しWarningますか? どうして? 警告が出てもプロセスが最後まで実行される可能性がありますが、予期したデータに関して出力が破損している可能性があります。私はこれらの破損をチェックするべきだと主張するかもしれませんが、私はプロセス全体を制御しているので、警告が出されたときに停止できるようにしたいと思います。
8 python  gdal  .net  ogr 

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