Daha çox

Problem şəklini yenidən proqnozlaşdırmaq üçün ogr2ogr ilə 'məlumat mənbəyi aça bilmir' problemi


Niyə aşağıdakı səhvi aldığım barədə heç bir fikrim yoxdur:

HATA: Aşağıdakı sürücülərlə 'Sydney2.shp' məlumat mənbəyi açıla bilmir.

Artıq şəkli ogrinfo ilə uğurla yoxladım.

Aşağıdakı əmrdən istifadə edirəm:

ogr2ogr -f "ESRI Shapefile" Sydney.shp Sydney2.shp -s_srs EPSG: 32656 -t_srs EPSG: 4326

Fikirləriniz varmı?


Sydney.shp-dəki məlumatları fərqli bir SRS ilə Sydney2.shp-ə çevirməyi gözlədiyinizə bənzəyir. Lakin bu sizin etdiyiniz şey deyil.

İstifadəsi: ogr2ogr [--help-general] [-skipfailures] [-append] [-update] [-field_list seçin] [-where məhdudlaşdırılan_ yerdə] [-progress] [-sql ] [-dialekt şivəsi] [-preserve_fid] [-fid FID] [-spat xmin ymin xmax ymax] [-a_srs srs_def] [-t_srs srs_def] [-s_srs srs_def] [-f format_name] [-overwrite] [ dsco NAME = VALUE]…] dst_datasource_name src_datasource_name [-lco NAME = VALUE] [-nln name] [-nlt type] [-dim 2 | 3] [layer [layer…]]

Nəzərə alın ki, təyinat əvvəl gəlir, ona görə Sydney2.shp-dən Sydney.shp-ə kopyalamasını xahiş edirsiniz. Yəqin ki, istəyirdin:

ogr2ogr -f "ESRI Shapefile" Sydney2.shp Sydney.shp -s_srs EPSG: 32656 -t_srs EPSG: 4326

Əslində əksər hallarda SVG görüntüsünü olduğu kimi istifadə edə bilərsiniz, topojson və ya GeoJSON-a çevirməyə ehtiyac yoxdur, ancaq nəzərə alınması lazım olan bir neçə məsələ var:

Orijinal SVG fayl ölçüsü tətbiqetmə üçün çox böyükdür? Əgər belədirsə, SVG sənədini optimallaşdırmaq olar (Məsələn: http://petercollingridge.appspot.com/svg-editor ilə). Bu kifayət deyilsə, başqa bir mənbədən bir shapefile əldə edə bilərsiniz (Məsələn: http://www.naturalearthdata.com/downloads/) və GeoJSON-a çevirə bilərsiniz (ogr2ogr istifadə edin, ya da veb interfeysi ilə http: // ogre .adc4gis.com / və ya http://trac.osgeo.org/gdal/wiki/DownloadingGdalBinaries) saytında GDAL ilə yükləyin). Nəticədə çıxan fayl hələ də böyükdürsə, mapshaper ilə sıxa bilərsiniz (http://www.mapshaper.org/ - həm shapefiles, həm də GeoJSON formatlarını alır!) Və lazım olduqda (fayl ölçüsünüz hələ də problemdirsə) nəticəni çevirin GeoJSON-dan topojson-a qədər xəritə (bax: http://github.com/mbostock/topojson/wiki).

Xəritənizdə yer məlumatlarını istifadə etməlisiniz? (məsələn, müəyyən bir şəhərin yerləşdiyi yeri göstərməlisiniz, ancaq şəhər orijinal SVG-də çəkilməyib) Sonra bir shapefile əldə etmək və GeoJSON-a çevirmək daha asandır (ogr2ogr istifadə edərək), çünki çox güman ki yüklənmiş SVG sənədində coğrafi konum məlumatı yoxdur.

Bir choropleth yaradırsınızsa və heç bir coğrafi yerləşmə tələbi yoxdursa, sadəcə səhifənizə SVG directy əlavə edə və məlumatlarınızı şəkilinizə uyğunlaşdırmaq üçün D3 istifadə edə bilərsiniz! Səhifənizdə SVG olduqdan sonra D3 işinizi asanlaşdıracaq siniflər və kimliklər daxil etmək üçün bütün yol məlumatlarını əl ilə düzəldə bilərsiniz.


Problem şəkli yenidən işləmək üçün ogr2ogr ilə məlumat mənbəyi aça bilmir - Coğrafi İnformasiya Sistemləri

Hər növ vektor geodata mənbələrini bir PostgreSQL / PostGIS verilənlər bazasına bağlayan və xarici məlumatları verilənlər bazası cədvəllərinə sinxronizasiya etmək üçün strukturlaşdırılmış bir yol təqdim edən bir server.

Coğrafi məlumatlarla əlaqəli ümumi bir vəziyyət, bu məlumatların bir PostGIS ilə təmin edilmiş bir verilənlər bazasına təkrarən ixrac edilməsi və idxal edilməsidir. İxracat Mapserver və GeoServer kimi məhsullarla çox yaxşı əhatə olunsa da, idxal bir az daha çətindir. Ümumi həllər əsasən shp2pgsql və ya ogr2ogr kimi əmrləri bağlayan xüsusi skriptlərdən ibarətdir. Bu cədvəllərin tamamını silmək və bərpa etmək əvəzinə tək satır məlumatlar yenilənməlidirsə, bu həllər tez-tez uğursuz olur və ya ən azı bəzi çətin hacklərə ehtiyac duyur. Yavaş və ya kəsilmiş əməliyyatların hesabını aparmaq çətindir və yenə də məlumatların bütövlükdə sinxronlaşdırıldığından əmin olun. Bu idxal skriptlərinin istifadəsi, onları digər tətbiqlər içərisində istifadəyə yararlı hala gətirmək üçün bir iş növbəsinə və ya hətta veb interfeysə bağlamaq üçün ya komanda xətti girişi, ya da bəzi xüsusi kod tələb edir.

Bu kimi çatışmazlıqlar gələcəkdə bənzər tələblər üçün yenidən istifadə edilə bilən bir həll olaraq batır yaratmağımızın səbəbi idi.

batyr aşağıdakıları təmin edən tək bir server tətbiqidir:

  • Məlumatların "ağıllı" yazılması. Sinxronizasiya artıq bir cədvəlin tam kəsilməsindən və bərpasından ibarət deyil. Yalnız xarici məlumat mənbəyi tərəfindən təqdim olunanlardan hər hansı bir fərqi olan xüsusiyyətlər həqiqətən yenilənir. Yeni xüsusiyyətlər yalnız əvvəllər verilənlər bazasında olmadıqda yaradılır və daha çox məlumat mənbəyinə daxil olmadıqda xüsusiyyətlər verilənlər bazasından çıxarılır (istəyə görə). Bütün bunlar, məlumat mənbəyindən uyğun xüsusiyyətləri müəyyənləşdirmək üçün cədvəlin əsas düyməsini istifadə edir.
  • Serverin mövcud vəziyyəti haqqında ümumi məlumat almaq və sinxronizasiyanı əl ilə başlamaq üçün inteqrasiya olunmuş veb-interfeys.
  • Batiri asanlıqla digər tətbiqetmələrə inteqrasiya etmək və sinxronizasiyaların çevik tetiklemesini təmin etmək üçün yaxşı sənədləşdirilmiş bir HTTP-API. Bundan əlavə, HTTP-API, batyrı Nagios kimi mövcud izləmə sistemlərinə inteqrasiya etmək üçün metodlar təqdim edir.
  • Həndəsələrin məlumat bazası cədvəlinin məkan istinad sisteminə çevrilməsi. Tələb olunan istinad sistemi PostGIS geometry_columns görünüşü / cədvəlində axtarılır və çevrilmənin özü PostGIS tərəfindən həyata keçirilir.
  • Daxili batyr məlumat mənbələrinə daxil olmaq üçün OGR kitabxanasından istifadə edir. Beləliklə, batyr OGR tərəfindən dəstəklənən və məsələn, bir WFS ilə əlaqəli bütün vektor formatlarını əhatə edir. Əlavə olaraq bu, genişləndirilmiş konfiqurasiya variantları üçün OGR Virtual Formatlarından istifadə etməyə imkan verir.
  • Sinxronizasiya işləri daxili növbəyə qoyulur və konfiqurasiya edilə bilən bir verilənlər bazası bağlantısı istifadə edərək paralel olaraq idarə olunur. Bu, həssas bir HTTP-API ilə yanaşı mənbələrin optimal istifadəsinə də qayğı göstərir.

Bu xüsusiyyətlər sayəsində xarici geodatlarınızı PostGIS verilənlər bazanıza sürətlə inteqrasiya etmək mümkündür - xüsusi kod yaratmağa vaxt sərf etmədən.


Məkan məlumatları olan CSV-nin oxunması¶

Tikinti nöqtəsi həndəsələri¶

Aşağıdakı CSV sənədini nəzərdən keçirin (test.csv):

GDAL 2.1-dən başlayaraq, X_POSSIBLE_NAMES və Y_POSSIBLE_NAMES açıq seçimi ilə X / Boylam və Y / enlik ehtiva edə bilən sütunların potensial adlarını birbaşa təyin etmək mümkündür.

ogrinfo -ro -al test.csv -oo X_POSSIBLE_NAMES = Lon * -oo Y_POSSIBLE_NAMES = Lat * -oo KEEP_GEOM_COLUMNS = YOX geri dönəcək :

CSV sənədində bir başlıq xətti yoxdursa, "sahə_n" saxta adları koordinat sahələri üçün mümkün adlar kimi istifadə edilə bilər. Məsələn düz XYZ nöqtə məlumatları olaraq aça bilər

ogrinfo -ro -al yükseklik.xyz -oo X_POSSIBLE_NAMES = field_1 -oo Y_POSSIBLE_NAMES = field_2 -oo Z_POSSIBLE_NAMES = field_3

Əks təqdirdə, bir və ya bir neçə sütunda WKT, WKB (onaltılıqda kodlanmış) və ya GeoJSON (bu halda GeoJSON məzmunu CSV qaydalarına riayət etmək üçün formatlanmalıdır, yəni ikiqat tırnakla əhatə olunmalıdır) kimi kodlanmış bir həndəsə tərifi varsa və düzgün bir şəkildə qaçmaq üçün simli içəridəki cüt tırnaqlar təkrarlanmalıdır), GEOM_POSSIBLE_NAMES açıq seçiminin adı.

Köhnə versiyalar üçün, VRT sürücüsünün köməyi ilə X və Y koordinatları üçün sütunları olan bir CSV sənədindən məkan məlumatlarını (nöqtələrini) çıxarmaq mümkündür.


Performans haqqında göstərişlər

Əməliyyat DBMS-lərinə (SQLite / PostgreSQL, MySQL, və s.) Yazarkən BAŞLANAN ƏMƏLİYYAT və KOMİTƏ ƏMƏLİYYAT ifadələri arasında yerinə yetirilən INSERT hesabatlarının sayını artırmaq faydalı ola bilər. Bu rəqəm -gt seçimi ilə müəyyən edilir. Məsələn, SQLite üçün açıq şəkildə -gt 65536 tərifi yüz minlərlə və ya milyonlarla sətir olan bəzi cədvəlləri doldurarkən optimal performansı təmin edir. Bununla birlikdə, -sipfailures -gt'ı ləğv etdiyini və əməliyyatların ölçüsünü 1 olaraq təyin etdiyini unutmayın.

PostgreSQL üçün PG_USE_COPY konfiqurasiya seçimi əhəmiyyətli bir əlavə performansı artırmaq üçün YES olaraq təyin edilə bilər. PG sürücüsü sənədləri səhifəsinə baxın.

Daha ümumiyyətlə performans göstərişləri üçün giriş və çıxış sürücülərinin sənədlər səhifəsinə baxın.


SSRS 2016 yerli rejimi SharePoint siyahısı məlumat mənbəyini birləşdirə bilmir

S201 2016 standartı ilə SP2016 istifadə edirik (13.0.5026.0 SQL Server 2016 Service Pack 2 (SP2)). SSRS xüsusiyyəti SQL serverində aktivdir və xidmətə başlandı. SSRS portalına http: // sqlserver / report ilə baxa bilirəm. SQL 2016 hesabat qurucumda da hesabat serverinə http: // sqlserver / ReportServer / bağlana bilərəm

Sonra ilk məlumat mənbəyimi bir hesabatda qurdum. Bağlantı növüdür Microsoft SharePoint siyahısı. Bağlantı simli sahəsinə "https://sharepoint.com/sites/dev" yazıram. Bu url həm PC, həm də SQL server daxilində düzgün şəkildə nəzərdən keçirilə bilər.

İldə Etimadnamə Düşünə biləcəyim bütün kombinasiyanı sınadım. Şəxsi hesabımı (sayt toplama admini) və sql admin və təsərrüfat admini və s. Sınamışam. Bütün nəticələr səhv mesajı verir

System.Web.Services.Protocols.SoapException: Göstərilən SharePoint siyahısına daxil olarkən bir səhv meydana gəldi. Bağlantı sətri etibarlı olmaya bilər. Bağlantı sətrinin düzgün olduğunu yoxlayın. ---> Microsoft.ReportingServices.DataExtensions.SharePointList.SPDPException: Göstərilən SharePoint siyahısına daxil olarkən bir səhv meydana gəldi. Bağlantı sətri etibarlı olmaya bilər. Bağlantı sətrinin düzgün olduğunu yoxlayın. ---> System.Net.WebException: Əsas əlaqə bağlandı: Göndərmə zamanı gözlənilməz bir səhv meydana gəldi. ---> System.IO.IOException: Nəqliyyat bağlantısındakı məlumatları oxumaq olmur: Mövcud bir əlaqə uzaq ana kompüter tərəfindən zorla bağlanmışdır. ---> System.Net.Sockets.SocketException: Mövcud bir əlaqə Microsoft.ReportingServices.Library.ReportingService2010Impl.TestConnectForDataSourceDefinition (DataSourceDefinition DataSourceDefinition, String UserName, Microsoft String, Microsoft String, Microsoft String, WebServer.ReportingService2010.TestConnectForDataSourceDefinition (DataSourceDefinition DataSourceDefinition, String UserName, String Password, String & amp ConnectError)

Hesabatı SSRS veb portalına yükləməyə çalışdım (http: // sqlserver / report) və eyni xətada da uğursuz oldum.

Problemin nə ola biləcəyini bilə bilərəmmi? Bu məsələ üçün xüsusi bir yama varmı?


XYMas'ın İkinci Günü & # 8230.GDAL

Beləliklə, kollec uşaqlarına qayıdıram və piton öyrənməli olduğum & # 8220OMG. Əslində python öyrənməyinizə kömək edir. Karyeranıza kömək edəcək və bir şeydə necə proqram quracağınızı bilmək həmişə xoşdur & # 8230.

AMMA

XYMas-ın ikinci günü pythona dalmazdan əvvəl GDAL öyrənməli olduğunuzu təqdim edəcəyəm, əgər maraqlarınız yer ətrafında mərkəzləşmişdirsə. GDAL çox sayda CİS proqramının təməlini qoyur (ArcGIS və QGIS yalnız 2 siyahıda). Komanda xətti əsaslıdır (Əvvəlki yazıya baxın) və vektor məlumatlarını və raster məlumatlarını idarə edə bildiyiniz üçün güclüdür və İnternetdə python ilə istifadə etmək üçün bir ton qaynaq var. Lisenziya tələb olunmur. Sadəcə güclü bir ürək və çevik barmaqlarınız lazımdır. Unutmayın & # 8211 GDAL alətləri rasterdə, OGR alətləri isə vektorda işləyir. Bu, 1-ci dərsdir.

Kiçik iş nümunəm və ya bu biliklərin niyə sizə yaxşı xidmət edəcəyi kimi:

  1. CSG faylı olaraq USGS-dən Əhəmiyyətli Zəlzələləri yükləməyə imkan verir: https://earthquake.usgs.gov/earthquakes/feed/v1.0/csv.php
  2. CSV-dən başqa bir şeyə köçürmək üçün ogr2ogr istifadə edəcəyəm: ogr2ogr -f GPKG equakes.gpkg important_month.csv -oo X_POSSIBLE_NAMES = Boylam -oo Y_POSSIBLE_NAMES = enlem -a_srs & # 8216EPSG: 4326 & # 8217
  3. İndi GDAL-dan 5.0-dan daha çox bütün zəlzələləri soruşacağam: ogrinfo equakes.gpkg -dialect sqlite -sql & # 8220seçin mag'dan əhəmiyyətli bir ay olan mag & gt 5.0 sifarişinin mag desc & # 8221

Əylənmək üçün onu hər şeyi görmək üçün QGIS-ə atacağam (bu Yeni Zelandiyadan əvvəl Volkanik püskürmə idi):

Bunu daha da yaxşılaşdırmaq üçün edə biləcəyim bir neçə şey var və böyüklüyün bir simvol deyil, bir sətir sahəsi olduğuna əmin olmaq kimi, amma işlədiyi nümunə üçün.

Keçən il bir müştərim birdən məni təəccübləndirdi ki, bəzi məlumatları dövlətə çatdırmalıyıq və ESRI tərəfindən qəbul edilə bilən bir formatda olmalıdır & # 8220. ESRI-dən uzaqlaşmaq üçün onları postgisə köçürmək üçün çox vaxt sərf etdiyim xaricində böyük bir problem yoxdu. Bir il əvvəl bir ssenari qurduq və 15 ay və ya daha uzun müddətdir işləyir. Proqramı təkmilləşdirmişik və serverləri dəyişdirmişik. Bir neçə dəyişikliklə hələ də işləyir.

ogr2ogr -f GPKG TCStransport.gpkg -nlt point PG: & # 8221host = host user = user dbname = dbname password = pass & # 8221 -nln & # 8220addresspoints & # 8221 -sql & # 8220select id, oirid, geom, r_segid, a seg_side, gislink, cast (SMALLINT kimi structype), strucdesc, stnum_h, stnum_l, stnum, stnumsuf, bina, mərtəbə, unit_type, unit_num, secuntnum, predir, pretype, name, type, sufdir, postmod, address, addr_esn, label, subname , boşluq, zip, zip4, esn, şəhər, ilçe, əyalət, döküm (SMALLINT kimi mənbə), lon, lat, x_sp, y_sp, z_val, gpsdate, addrauth, editor, geomod, geosrce, geodate, attmod, attsrce, attdate, tökmə (status SMALLINT), qeydlər, sağ, sol, şərh, oxunma ünvanı, köhnə_adres, rəng, nöqtə növü, küçə, kad_adı, yer_deyişi, ünvan nöqtələrindən kad_post & # 8221

Fikir verin və yazdığım kiçik bir proqram (bilinən kainatdakı 2-ci ən pis proqramçı), indi 1 server yüksəltməsindən və 3 proqram yeniləməsindən qırılmadan keçdi. Bir ildən çoxdur hər gecə. Uğura əsaslanan gündə bir növ 3.50 dollar ödəmə planı təyin etməliydim.

& # 8230.və Raster məlumatları ilə edə biləcəyiniz işi müzakirə etmədim. Əslində & # 8211 GDAL hissəsini müzakirə edək. Bir SID şəklini sıxmadım və bir müştəri üçün lazım oldum və buna görə onu normal ölçülü bir şeyə sıxmaq üçün qaçdım:

gdal_translate -co TILED = EVET -co COMPRESS = JPEG -co PHOTOMETRIC = YCBCR -tr 1 1 -mask 3 ortho_1-1_hc_s_tn065_2018_1.tif NAIP_2018.tif

Daha yaxşı / kiçik etmək üçün daha çox & # 8220things & # 8221 əlavə edə bilərdimmi? Yəqin ki & # 8211 amma işə yaradı. Beləliklə hər hansı bir görüntü dosyası götürə bilərəm, kompres edə bilmirəm, sıxıram, formatı dəyişdirə bilərəm, proyekt verə bilərəm və s. & Hamısı GDAL-dan. ArcMap / Pro / Nə adlandırılsa da daxil olmaqla hər şeylə işləyir.

Lisenziya tələb olunmur. PİTONU SEVMƏK İSTƏNƏNLƏRİNİZ ÜÇÜN PİTON İLƏ İŞLƏYİR.

XYMAS-ın bu ikinci günü üçün sizə işarə edirəm:

  • Sara Səfəvinin mükəmməl təlimatı: http://www.sarasafavi.com/intro-to-ogr-part-i-exploring-data.html
  • GDAL Sənədləri: https://gdal.org/
  • Python Yemək Kitabı: https://pcjericks.github.io/py-gdalogr-cookbook/

Buna görə sizdən GDAL öyrənməyinizi və sonra pythona keçməyinizi xahiş edirəm. Çox yaxşı bir proqramdır. Aktiv bir cəmiyyətdir. Bu bacarığı öyrənmək üçün vaxtınızı itirməyəcəksiniz və GEO dünyasını dolaşacaqsınızsa, ona bir nöqtədə toxunacaqsınız (və ya niyə olduğuna dair suallarım yoxdursa & # 8211) ).


Chrome brauzer uzantısı kimi quraşdırılmış xrom-uzaq masaüstünüz varsa, problemin səbəbi olan böyük bir şans var.

Bu cavabı tapdım (harada olduğundan əmin deyiləm), amma dərhal işə yaradı.
Komanda xəttindən

Chrome RD-nin əməliyyat sistemimi idarə etmək və ya tənzimləmək üçün təşəbbüs göstərməsinin səbəbindən əmin deyiləm, buna görə yox oldu!

Çox güman ki, sürücünüz MS Windows-un fayl sistemi olan ntfs ilə formatlaşdırılmışdır. Ümumiyyətlə, bu cür bölmələrə girişlə bağlı problemlər, ntfs həcminin "təmiz" olmaması, yəni düzgün şəkildə ayrılmaması ilə əlaqədardır.

Diskin təmiz olduğundan əmin olmaq üçün:

  • MS Windows-a qoşun.
  • Sürücüyü MS Windows-un Fayl Sistemi yoxlama vasitələrindən istifadə edərək yoxlayın (bunun üçün əməliyyat sisteminizin təlimatına baxın).
  • İndi tamamilə bağlayın pəncərələr, yəni qış yuxusu yoxdur. Alternativ olaraq bildiriş sahəsindəki işarəni istifadə edərək sürücünü düzgün şəkildə ayırın.

Ubuntu-da girişinizə qədər gözləyin əvvəl sürücünü birləşdirir. Bu, sürücünün cari istifadəçi üçün icazələrlə quraşdırıldığından əmin olacaq.

Artıq səsi problemsiz əldə edə biləcəksiniz.

Ubuntu daxilində, istifadə edildikdən sonra sürücünü diqqətlə ayırmaq lazımdır. Sürücü çıxartmaq üçün Dosyalardakı (nautilus) sağ düyməni vurun və ya sürücünü ayırmadan əvvəl Ubuntu-nu tamamilə bağlayın.


Kemiringan Tanah

topografi / kemiringan tanah ideal paling banyak 15% (lima belas persen).

Pasal 6 (c)

Nah, ada yang menarik dari kemiringan tanah ini, karena pada QGIS, algoritma yang digunakan untuk kemiringan tanah adalah Slope. Anda dapat mengakses algoritma ini dari QGIS Qenerasiya Toolbox & gt Raster ərazi analizi & gt Yamac, kemudian diterapkan pada data DEM. Əlhəmdulillah, məlumat DEMNAS sudah dapat diperoleh dari BIG.

Nah, mendapatkan yamacı / kemiringan & lt 15 persen, kita harus menggunakan SAGA.


SDK-nın xüsusi məkan istinad sistemləri ilə qatlar aça bilmədiyi bilinir. Bu “FGDB: XXXXXXX açma xətası” mesajları olduqda belə ola bilər. Gdb-də ogrinfo --debug işlədildikdə (GDAL 2.0-da xəbərdarlıq kimi bildirilir). OpenFileGDB sürücüsünün istifadəsi ümumiyyətlə bu problemi həll edəcəkdir.

FGDB koordinatının kəsilməsi yazı zamanı həndəsələrin dəyişdirilməsinə səbəb olacaqdır. Çəkmə davranışını idarə etmək üçün mənşə və miqyaslı qat yaratmaq seçimlərindən istifadə edin.

Sürücü SDC formatında məlumatları oxuya bilmir (Ağıllı Məlumat Sıxdırması), çünki əməliyyat ESRI SDK tərəfindən dəstəklənmir.

CDF formatında (Sıxılmış Məlumat Formatı) sıxılmış məlumatları oxumaq üçün ESRI SDK 1.4 və ya daha sonrakı versiyalar tələb olunur.