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

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


1
Pythonを使用してQGISで選択した機能の「スクリーンショット」を自動的に取得することは可能ですか?
ユーザーがフィーチャ(私の場合は都市部)のプロファイルを作成できるツールを実装しています。この機能(QGISウィンドウに表示される)のスクリーンショットを自動的に取得して、PDFプロファイルに表示することは可能ですか? 写真は、フィーチャーの範囲と、フィーチャーを超えたWMSレイヤーのみを示す必要があります。提案できるツールは既にありますか?
11 qgis  python 

1
Pythonを使用してFTPサイトのファイルジオデータベースをローカルディスクにコピーしますか?
PythonスクリプトでダウンロードしたいFTPサイトにファイルジオデータベースがあります。現在、これを行う1つの方法は、ftpジオデータベースをコンピューター上のジオデータベースにコピーすることです。以下は、私が始めたスクリプトです。ftp gdbを取得するためにこのスクリプトを変更する方法を知っている人はいますか?ありがとうございました 以下は、提供された@om_hennnersの回答に基づいた最終的な作業コードです。 import arcpy, os, sys from arcpy import env arcpy.env.overwriteOutput = True from ftplib import FTP directory = "/group/geodb" #location of gdb on ftp folder = "D:\\temp\\" out_gdb = "data.gdb" out_path = folder + os.sep + out_gdb copy_gdb = "hydro.gdb" # This is the gdb I would like …


5
失敗している大規模なモザイクプロセスを回避するにはどうすればよいですか?
約550Gbのtif画像をモザイク化する必要があり、試したソフトウェアが失敗し続けます。領域はゾーンに分割されているため、最小のタイルは約200タイルです。 3.30ギガヘルツIntel Xeon E31245、DELL、16GB RAM、64ビットWin 7 ProfessionalでERDAS(ImagineおよびMapper)、ArcINFO、およびGlobal Mapperの最新バージョンを使用しました。マルチコア(合計4)、ハイパースレッド(合計8)マシン。私のCには700GBの空き容量があり、Dには1.5TBがあります。 Grassの使用を検討しています(以前はありません)が、i.image.mosaicは4つのファイルしか処理していないようです。他に試してみるオプションやオープンソースソフトウェアはありますか? 申し訳ありませんが、モザイクデータセット(または他のソフトウェアの同等物)は使用できません。ecwとして定義されたデータなしの領域を持つゾーンを作成し、任意のGISソフトウェアで開き、より低い解像度/古い新しいデータがシームレスに存在しない場合のデータ。 モザイク化されたファイルが異なるソフトウェアでどのように見えるかの例。Global Mapper / ERDASは問題ありませんが、arcgisでは正しくありません。 ---旧情報--- ラフな描画でごめんなさい。したがって、5つのゾーンとして色付きの領域を使用すると、より大きなAOIでデータ領域がなくなります。 arcgisのコードは次のとおりです(これはモデルとして実行され、PythonではなくtifList入力を取得できないため)。 arcpy.MosaicToNewRaster_management(tifList+";" +mask,RootOutput,"Tile1.tif","PROJCS['GDA_1994_MGA_Zone_55',GEOGCS['GCS_GDA_1994',DATUM['D_GDA_1994',SPHEROID['GRS_1980',6378137.0,298.257222101]],PRIMEM['Greenwich',0.0],UNIT['Degree',0.0174532925199433]],PROJECTION['Transverse_Mercator'],PARAMETER['False_Easting',500000.0],PARAMETER['False_Northing',10000000.0],PARAMETER['Central_Meridian',147.0],PARAMETER['Scale_Factor',0.9996],PARAMETER['Latitude_Of_Origin',0.0],UNIT['Meter',1.0]]","16_BIT_UNSIGNED","0.5","3","MAXIMUM","#") # Replace a layer/table view name with a path to a dataset (which can be a layer file) or create the layer/table view within the script # The following inputs are …

2
メタデータ-Pythonを使用した自動ビルド
空間データ(shp / gdb / tabベクトルとecw / tifラスター、およびlas、xyz、DEMデータ)の大きな(10,000以上)リポジトリがあり、一部にはanzlicメタデータエディターを使用してxmlにメタデータレコードがあります。各空間データセットに関連付けられたxmlレコードがあるかどうかを確認し、関連付けられた空間ファイルに対して投影、空間範囲、ソース、およびサイズを確認します。 ESRIで読み取り可能な形式からこの情報を抽出するarcpyベースのスクリプトを作成しましたが、タブファイルの処理方法、さらに重要なこととして、anzlic metaeditorベースのxmlレコードと照合する方法については不明です。 したがって、citypoints.shp / .tabがある場合、メタデータレコードとしてcitypoints_metadata.shp / .tab.xmlが必要です。これは、一部のソフトウェアが自動作成するcitypoints.shp.xmlとは別のものです。 別の同様のフォーラムの質問は、ANZLICメタデータはArcGIS 10.xの新しいアプローチを使用してサポートされていますか?しかし、有効なレコードの存在をチェックし、私の質問(ArcPyでMapInfo .tabファイルを読む方法)に従ってオープンソース/クリエイティブコモンズワークスペースで.tab(他の非esri)形式を処理する要件をカバーしていません?)。また、「オープンソースのISOメタデータエディターを探していますか?」ただし、いずれもベースメタデータファイルを自動生成したり、既存のレコードをソースと比較したりすることはできません。

2
GDALに異なるサイズのラスターを追加して、結果が交差領域のみにあるようにする方法
2つのラスターを追加し、1つのラスター出力を生成するPythonメソッドを書いています。私が制御できない理由により、入力ラスタの範囲は異なりますが、重複しています。 出力ラスタ範囲が2つの入力の交差領域のみになるように出力を生成するために、2つの重複領域で重複する入力ラスタピクセルのみを操作することは可能ですか?
11 python  raster  gdal 

2
GDALで作成されたGeoTIFFは、Arc / QGISに読み込まれたときに最小/最大範囲を持たない
GeoTIFFドライバーを使用して、GDALでいくつかの浮動小数点ラスターを作成しています。結果の画像をQGISまたはArcに読み込むと、デフォルトのシンボルでは最小値が-3.40282e38、最大値が3.40282e38になるため、ラスターは正確に灰色に見えます。実際の範囲をGeoTIFFに直接書き込む方法はありますか?GISプログラムにロードすると、ヒストグラムが自動的にうまくスケーリングされますか?私はこのようなデフォルトのヒストグラムを作成しようとしました: rasterMin, rasterMax = raster.GetRasterBand(1).ComputeRasterMinMax() raster.GetRasterBand(1).SetDefaultHistogram(rasterMin, rasterMax, 255) しかし、バインドの問題のようなエラーが表示されます。 File "/usr/lib/python2.6/dist-packages/osgeo/gdal.py", line 846, in SetDefaultHistogram return _gdal.Band_SetDefaultHistogram(self, *args) TypeError: not a sequence 私が何ができるか、または間違えた場合の提案はありますか?

3
Pythonでラスターファイルをダウンロードして処理しますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、地理情報システムスタック交換のトピックになるようにします。 3年前に閉店しました。 私はpythonにはかなり慣れていないので、多くの人にとって些細な質問のガイダンスを求めています。 Pythonスクリプトで「wget」を使用してサーバーからラスターファイルをダウンロードし、同じスクリプトで処理する方法はありますか?
11 python 

2
風光明媚なドライブの道路をどのように評価できますか?
相対的なGIS初心者はこちら。 私は個人的なプロジェクトに取り組んでおり、彼らがバイクに乗るのがどれほど素晴らしいかについて道路を評価しています。TIGERデータセット(PostGIS)の道路データを処理し、少数のメトリックを適用するPythonプログラムを作成しました。 道路の分散(ねじれ) 道路標高の分散 道路は水域を通り過ぎますか 道路は公園を通りますか メトリックの適用結果は良いスタートでしたが、完璧とはほど遠いものです。だから、私は適用するいくつかの新しいメトリックを決定しようとしています。 道路周辺の土地被覆を確認します。なだらかな丘の中腹に沿って乗ることは、工業団地よりも森林よりも優れています。 道路状況(舗装または未舗装) 一時停止標識の数、遭遇した街灯 可視域解析を利用して、水域が実際に道路から見えるかどうかを確認します 山の景色を特定し、可視領域解析を使用して、道路から山が見えるかどうかを確認します(グレートスモーキーマウンテンについて) 履歴交通量データを適用する 一部のGIS専門家のアドバイスが必要です。これらの音は実現可能ですか、それとも理にかなっていますか?他に試してみるべきことはありますか? 最も重要なのは、有効なアイデアのデータをどこで入手できるかということです。
11 python  data  analysis 

1
Pythonを使用した終了スクリプト
私が取り組んでいるArcGIS用のPythonスクリプトがあります。必要なデータが利用できない場合は、スクリプトを終了したいのですが。sys.exit()をまっすぐ試しましたが、ArcMapで例外が発生するため、回避したいと思います。tryブロックの使用を提案するこのスレッドを見つけたので、この関数を作成しました。 def quit_script(message): log_msg(message) # already defined; writes a message to a file if log_loc: output.close() # close the file used with log_msg() try: sys.exit() except SystemExit: pass 残念ながら、それもうまくいきませんでした。ええ、ArcMapでそのエラーは発生しませんが、終了することもありません。現在、if / elseステートメントにコードの大部分が含まれていますが、それは見苦しいです。誰か他の提案がありますか? ありがとう!ブライアン

2
球状メルカトルとゾーンUTMの距離の測定
WGS84 lat / longにポイントがあり、それらの間の「小さい」距離(たとえば5km未満)を測定したいと思います。 http://www.movable-type.co.uk/scripts/latlong.htmlのHaversine式を使用できますが、非常にうまく機能します。 ただし、Python Shapelyライブラリを使用して、距離よりも多くの操作を実行できるようにしたいと考えています。作業している規模では、平らな地球で十分な近似値であるためです。地理座標をデカルト座標に確実に投影するために、Pythonを使用proj4していますが、思ったよりも大きなエラーが発生しているようです。 ローカルUTMゾーンを使用すると、数メートルのヘイバーシンの差が生じますが、これは問題ありません。しかし、UTMゾーンを解決する必要はありません(ポイントは世界中にある可能性があります)。そのため、「球面メルカトル」で試しましたが、ヘイバーシンと投影距離の違いは100%をはるかに超えています。これは、球形メルカトルに本当に適していますか?私が本当に欲しいのは、世界のどこからでも5km以内の2つのポイントの実行可能なデカルト投影です。 from shapely.geometry import Point from pyproj import Proj proj = Proj(proj='utm',zone=27,ellps='WGS84') #proj = Proj(init="epsg:3785") # spherical mercator, should work anywhere... point1_geo = (-21.9309694, 64.1455718) point2_geo = (-21.9372481, 64.1478206) point1 = proj(point1_geo[0], point1_geo[1]) point2 = proj(point2_geo[0], point2_geo[1]) point1_cart = Point(point1) point2_cart = Point(point2) …

2
ジオパンダの境界ボックスでフィルタリングしますか?
EPSG:4326にgeopandasデータフレームがあり、特定の境界ボックス内にあるすべての行で構成される新しいデータフレームを作成します。 最初に、気になるバウンディングボックスを取得します(これは実際には別のデータフレームのバウンディングボックスです)。 print df_sussex.total_bounds [ -1.57239292 50.57467674 0.14528384 51.27465152] 次に、その境界ボックスのみで構成されるデータフレームを作成します。 pts = gpd.GeoDataFrame(df_sussex.total_bounds) そして最後に、その境界ボックスと交差するすべての機能を取得しようとします。 sac_sussex = gpd.overlay(pts, df_sac, how='intersection') しかし、これは私に与えますAttributeError: No geometry data set yet (expected in column 'geometry'。 何が悪いのですか?
11 python  geopandas 

1
ジオパンダラインポリゴンの交差
複数のラインが2つの異なるジオデータフレームのポリゴンと交差する場所を見つけようとしています。 from shapely.geometry import Polygon, LineString import geopandas as gpd polygon = Polygon([(0, 0), (1, 0), (1, 1), (0, 1), (0, 0)]) line1 = LineString([(0.5, 0.5), (0.7, 0.7)]) line2 = LineString([(0.9, 0.9), (0.2, 0.6)]) poly_gdf = gpd.GeoDataFrame(geometry=[polygon]) line_gdf = gpd.GeoDataFrame(geometry=[line1, line2]) これは、上記のジオデータフレームは次のようになります(1つにはポリゴンがあり、もう1つには2つの線があります)。両方の線がポリゴンと交差しているように見えます。 ただし、交差出力は非常に混乱します。 print(line_gdf.intersects(poly_gdf)) 0真 1誤り print(line1.intersects(polygon)) print(line2.intersects(polygon)) 本当 本当 …

2
Pythonでシェープファイルポリゴンを使用してnetcdfからデータを抽出する
特定のシェープファイルを使用して、NetCDFからデータをサブセット化する必要があります。データは、1/4度の解像度での海面温度と海の色です。米国を表す4つのポリゴンがあります。北東大陸棚の大規模な海洋生態系とそのデータを抽出するために使用する必要があるサブコンポーネント。私は1982-2014の月次複合ファイルで作業しているので、このデータ抽出ルーチンは自動化する必要があります。ファイルはすでに[35、45、-80、-60]のおおよその作業領域グリッドにサブセット化されています。 以前は、RでHDF5データファイルをラスターに変換してこの方法で処理していましたが、この方法は非常に効率が悪く、現在のNetCDFファイルを使用するpythonでより良い解決策があると確信しています。 これまでは、GDALとフィオナを使用して形状ファイルを読み込み、NetCDF4を使用してデータファイルをロードしてきました。データをサブセット化する方法がわかりません。私はこれを見つけました: GDAL for Python:NetCDFファイルからサブドメインを抽出しますか? しかし、私はこれらのポリゴンが確かにそうではない単純なバウンディングボックス以外の何かを使用してnetcdfファイルをサブセット化する方法についての最も曖昧な考えを持っていません。 ポリゴンルーチンのポイントはおそらく機能するのに永遠を要しますが、これらの形状に合うように回転された小さな境界ボックスを使用してデータをサブセット化し、最初の開始点としてポリイン検索を行うことができます。 lon / lat境界ボックスを使用して、曲線のnetCDFファイル(ROMSモデル出力)をサブセット化します。 何か案は? 編集1: OpenClimateGISパッケージに出くわしました。これは法案に完全に適合しているようです... http://ncpp.github.io/ocgis/examples。 html#advanced-subsetting

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