Mencari platform GIS yang sangat dapat disesuaikan? [Tutup]

9

Saya dididik dalam GIS menggunakan ArcGIS (Desktop dan Workstation) dan meneliti dengan (sangat) mengintip pendek di MapInfo dan uDig. Selama waktu itu, saya puas dengan program ini karena saya menggunakan basis data yang relatif kecil dan tidak melakukan banyak tugas berulang dan ArcGIS memiliki banyak alat keren untuk menganalisis data ilmiah.

Selama dua tahun sekarang, sejak lulus, saya telah bekerja di sebuah perusahaan yang berskala sangat berbeda. Saya berurusan dengan database besar, melakukan tugas-tugas yang relatif "lebih sederhana", tetapi lebih dari itu mereka terdiri dari tugas yang berulang (saya melakukan serangkaian tugas sederhana sekali seminggu ke seluruh database). Selama waktu ini, saya telah menggunakan AutoCAD (karena banyak data kami diambil menggunakan AutoCAD) dan tumbuh semakin menghargainya - Keuntungan terbesar adalah menggunakan bahasa Pemrograman LISP dan menggunakan variabel sistem Anda dapat mengontrol keseluruhan banyak pengaturan - apakah itu menyangkut menyesuaikan nilai default untuk alat, menghilangkan penggunaan kotak dialog dalam program, atau opsi untuk skrip pembukaan otomatis dan manipulasi gambar.

Apakah ada platform GIS di luar sana, gratis atau tidak, yang memiliki tingkat penyesuaian yang tinggi, atau apakah saya ditakdirkan untuk pekerjaan manual yang frustrasi?

Saya lebih suka platform dengan UI yang bagus di sepanjang opsi scripting, tapi itu bukan keharusan.

Jonatr
sumber
6
ada tugas-tugas di ArcGIS yang benar-benar bisa dituliskan dan diautomatisasi, yang lain tidak, dan kisaran di antaranya. Dito untuk semua platform lainnya. Jika Anda dapat memberikan contoh-contoh jenis pekerjaan kasar yang ingin Anda hindari, mungkin ada beberapa jawaban spesifik yang bermanfaat.
matt wilkie
@ Polyeo Anda tahu bahwa ini adalah pertanyaan 7 tahun yang Anda minta diedit?
Nicklas Avén
@ NicklasAvén Saya jelas tidak menuntut untuk diedit. Saya hanya memilih untuk ditutup agar tidak dilihat sebagai pertanyaan yang dianggap cocok untuk bertindak sebagai model untuk pertanyaan serupa yang akan diajukan hari ini. Untuk mencoba dan mengatasi beberapa alasan mengapa saya pikir itulah yang saya lakukan sendiri. Apakah pertanyaan lama seperti itu harus ditutup dibahas di meta.stackexchange.com/a/194117/215590
PolyGeo

Jawaban:

5

Saya tidak cukup berpengalaman untuk memberi jawaban dari banyak aspek, tetapi ... Saya melakukan hal pertama saya di GIS dalam penulisan ArcView 3.x di Avenue. Saya sangat menyukai kecepatan dan kemungkinan. Maka saya tidak pernah mengerti kegembiraan dalam menunggu ArcGIS dimulai, mencari alat yang tepat dan kemudian menemukan alat yang saya butuhkan, perlu ArcInfo.

Cinta baruku adalah PostGIS. Ini lebih dari sekadar basis data untuk disimpan. Fungsionalitas bawaan memungkinkan untuk melakukan semua pemrosesan dan analisis yang telah saya gunakan sejauh ini. Dalam kebanyakan kasus, ini jauh lebih cepat daripada produk Arc.

Dalam dunia open source Anda tidak akan mendapatkan satu solusi untuk semuanya tetapi ada proyek dan perangkat lunak yang mencakup semua kebutuhan Anda.

Seperti yang saya katakan, saya melakukan pemrosesan dan analisis di PostGIS. Saya dapat menyimpan sql-queries dalam file teks untuk digunakan kembali (seperti alat dalam perangkat lunak lain tetapi jauh lebih transparan). Anda dapat menulis fungsi dalam banyak bahasa yang berbeda seperti plpgsql (bahasa PostgreSQL khusus) Python, pLR, C dan banyak lagi.

Untuk GIS desktop saya menggunakan sebagian besar QGIS. Apa yang tidak ada dalam inti QGIS ada dalam ekstensi. Jika itu tidak cukup, Anda dapat menulis ekstensi Anda sendiri dengan Python dan saya pikir juga C ++)

Jika Anda terbiasa dengan uDig, tentu saja itu merupakan alternatif.

Jika Anda ingin melakukan pemetaan web, Anda bisa mencoba MapServer. Mapserver memenangkan tolok ukur besar pada konferensi FOSS4G tahun ini dalam melayani WMS. Esri tidak ingin berpartisipasi tahun ini. Tahun lalu mereka telah mendaftar untuk berpartisipasi tetapi tidak pernah melakukannya. Tahun ini mereka bahkan tidak mendaftar.

GeoServer adalah alternatif lain untuk menyajikan peta web. Ini sangat user friendly dan menyajikan banyak format berbeda. Ini juga menangani WFS-T sehingga Anda dapat mengedit data peta dan mengirim kembali suntingan ke server.

Jika Anda menginginkan server WFS-T yang ringan dan sangat cepat, Anda harus melihat Tiny-OWS

Yah, daftarnya bisa jadi panjang perangkat lunak yang kompeten bersama-sama membangun suite yang sangat kuat dan tentu saja dapat disesuaikan.

Maksud saya, bisakah itu lebih disesuaikan. Anda memiliki akses ke semua kode sumber. Dan untuk uang yang Anda hemat tanpa membayar biaya tahunan untuk Esri Anda dapat mengambil beberapa program studi gratis atau menyewa seorang programmer. Anda akan mendapatkan banyak pengkodean dalam proyek-proyek tersebut dengan biaya lisensi Server ArcGIS.

Nicklas Avén
sumber
12

Saya tidak setuju dengan Anda.

Saya pikir bantuan / forum / blog / vids / etc ArcGIS memberikan perspektif yang bagus tentang apa yang dapat Anda capai dengan rangkaian produk ArcGIS.

Anda tidak terbatas pada Python untuk memanipulasi data spasial Anda. Anda masih dapat menggunakan VBA pada 931 dan 10 untuk mengakses perpustakaan ArcObjects, atau Anda bisa mengambil langkah lebih jauh dan menggunakan .NET untuk melakukan segala hal, dan sekali lagi ini didokumentasikan dengan baik.

Saya juga berpikir bahwa pintasan untuk ArcGIS Desktop sangat bagus, dan Anda dapat membuat pintasan sendiri melalui dialog Kustomisasi jika perlu.

Jika Anda tidak ingin mempelajari cara membuat kode, ada juga ModelBuilder yang merupakan cara hebat untuk mengotomatiskan tugas-tugas yang membosankan / alur kerja umum, terutama dengan geoproses .

Saya bias, tetapi saya memiliki pengalaman dengan produk lain.

Saya tahu bahwa Python tidak memiliki kekuatan untuk menyediakan antarmuka yang mudah disesuaikan untuk ditampilkan kepada pengguna, tetapi seperti yang saya sebutkan, dengan VBA / .NET Anda dapat menyatukan bentuk yang kaya konten untuk memberikan antarmuka khusus bagi pengguna untuk melakukan apa yang mereka butuhkan. melakukan.

  • Dengan .NET Anda dapat membuat skrip terhadap MXD (mis. Loop melalui folder MXD dan buka setiap MXD, lakukan beberapa hal, lalu pindah ke MXD berikutnya
  • Memanipulasi nilai default dalam data spasial Anda juga dapat dicapai dengan ArcObjects.
Simon
sumber
Keterampilan pemrograman saya bagus, tetapi tidak mungkin saya cocok untuk programmer berpendidikan (tapi saya semakin baik setiap hari). Itu berlaku untuk Python / VBA. Karena sayangnya VBA berjalan cepat (terima kasih kepada Microsoft), saya hanya mengatakan bahwa dari pengalaman saya, itu memalukan, karena sederhana di satu sisi dan kuat di sisi lain. Tetapi pada tingkat ESRI merilis pembaruan (dengan janji 10.1 tidak akan mendukung VBA), saya tidak melihat ada pembenaran untuk menginvestasikan waktu dalam belajar mengembangkan menggunakan VBA.
Jonatr
Dan untuk VB.net / ArcObjects. Saya lupa menyebutnya seperti yang saya rasakan (dari sedikit pengalaman C # yang saya miliki) bahwa itu tidak dimaksudkan untuk analis GIS rata-rata (yang memiliki beberapa pengalaman pemrograman dan dapat mengelola VBA / Python dasar) tetapi untuk mengalami sepanjang masa- programmer profesional yang berkomitmen. Bagi saya, dengan menjadikan VB.net sebagai bahasa yang disukai, ESRI menyerah pada sebagian besar perusahaan kecil dan analis yang terbiasa mengubah hal-hal kecil untuk pandangan pribadi.
Jonatr
Masalah mendasar yang saya miliki dengan VB.net adalah sayangnya saya tidak dapat mendedikasikan waktu untuk mempelajarinya dari awal (Ini adalah kursus yang berlangsung setahun) dan sebagai alternatif saya tidak dapat menemukan referensi \ buku online bagaimana cara bekerja dengan ArcGIS dan VB.net. Sejauh yang saya tahu terlepas dari beberapa kode di luar sana, ESRI tidak punya buku tentang hal ini (hal-hal seperti mengenal arcobjects tetapi untuk c #). Jika Anda lebih tahu, silakan berbagi.
Jonatr
2
Itu pertanyaan yang bagus dan terpisah untuk gis.stackexchange.com: "1. Setiap kali saya membuka symobolgy dan pergi ke jendela Fill Color untuk menyesuaikan warna yang saya butuhkan. Ini terbuka di CMYK dan saya perlu mengubahnya ke RGB." Mungkin ada cara non-terprogram untuk menyelesaikan masalah itu.
Jay Cummins
1
re: pertanyaan # 2 yang Anda sebutkan di atas. Masalah itu tampaknya mudah untuk saya, tetapi saya tidak melakukan banyak hal dengan arcgis / python jadi mungkin orang lain akan berkomentar. Saya akan merekomendasikan memecah ini menjadi pertanyaan lain untuk gis.stackexchange.com (itu akan membuatnya lebih mudah untuk masa depan, analis GIS frustrasi yang perlu mengulang, memperbesar, mengekspor untuk menemukan jawaban mereka).
Jay Cummins
4

"... Isi jendela Warna untuk menyesuaikan warna yang saya butuhkan Ini terbuka di CMYK dan saya perlu Ubah ke RGB"

  1. Lucu, saya belajar bagaimana melakukan ini minggu lalu.

    • buka ArcMap -> tambahkan layer -> buka pallete warna
    • Ubah CYMK ke RGB
    • Simpan dokumen ke Normal.mxt di bawah dokumen & pengaturan Anda (di bawah folder ESRI)
    • Tutup dan buka kembali ArcMap -> Akan selalu default ke RGB mulai sekarang.
  2. DS Map Book mungkin bisa menjadi solusi untuk Anda? Atau jika Anda pada v10, D ata Driven Pages ? Seperti yang saya katakan, .NET / VBA scripting dapat melakukan ini, saya tidak terlalu panas pada Python untuk memberikan solusi Python

"Mengenal arcobjects" tetapi untuk c #

Saya setuju dengan Anda di sini. Saya tahu ESRI mengetahui hal ini tetapi tidak yakin apakah mereka memiliki sesuatu dalam pipa. Tautan ini dapat membantu sebagai starter, jika Anda memiliki latar belakang di VBA. Saya masih berpendapat bahwa AO GTK masih merupakan bacaan yang valid dan pelajaran yang didapat masih berlaku untuk .NET (dan Anda dapat membaca buku dalam seminggu @ 1-2 jam sehari).

Saya adalah / penggemar berat VBA ...

Simon
sumber
Terima kasih. Saya "membersihkan debu" dari salinan GTKAO SAYA pagi ini dan berpikir sudah waktunya untuk kembali ke sana karena saya telah membaik sejak terakhir kali saya setengah membacanya. Mungkin setelah itu saya akan memiliki lebih banyak dasar untuk menyelam dan menangani VB.Net.
Jonatr
Bagian dari masalah saya adalah meyakinkan departemen komputer perusahaan saya membutuhkan Visual Studio (GIS tidak begitu populer - mereka tidak melihat kita sebagai pengembang dan jadi saya harus berjuang untuk mendapatkan barang-barang dasar). DS MapBook adalah alasan lain untuk berkelahi dengan komputer, dan itulah sebabnya saya fokus pada Python dan VBA sampai sekarang - mereka sudah ada di dalamnya dan saya tidak perlu memperebutkannya. Ngomong-ngomong, terima kasih atas tip soal CMYK / RGB, saya akan mencobanya.
Jonatr
@jonatr - Ada versi gratis Visual Studio - Saya pikir itu disebut "Express". Mungkin akan melakukan semua yang Anda butuhkan. Versi profesional sebagian besar hanya memiliki lebih banyak alat untuk pengembang profesional.
Saya setuju, Visual Studio Express biasanya cukup substansial untuk mendapatkan apa yang Anda inginkan. Ini adalah tempat yang bagus untuk mulai belajar, dan id juga merekomendasikan tautan ini: msdn.microsoft.com/en-au/beginner/default.aspx
Simon
3

Pada platform ArcGIS, jika Anda tidak ditakdirkan untuk pekerjaan manual, maka Anda ditakdirkan untuk melakukan beberapa pekerjaan pemrograman (tidak buruk bagi saya karena saya menikmati hal semacam itu)!

Saya tidak tahu cara di 9.3.x untuk mengganti nilai default di geodatabase tanpa menggunakan alat kustom. Ini yang saya lakukan, terutama jika itu adalah serangkaian operasi pengeditan berulang.

Di ArcGIS 10, pengguna dapat membuat templat Buat Fitur dan menetapkan nilai default untuk setiap templat pada awalnya, templat tersebut adalah simbol untuk lapisan fitur, tetapi Anda dapat menyalin / remote / memodifikasi templat fitur pembuatan sesuai kebutuhan ). Saya belum pindah ke ArcGIS 10, tetapi ini adalah salah satu fitur yang ditunggu-tunggu oleh editor GIS kami.

Saya tidak pernah perlu menghapus pintasan, jadi saya tidak yakin apakah Anda dapat melakukannya di versi ArcGIS mana pun. Anda pasti dapat menambahkannya (akselerator). Saya tidak yakin apakah Anda dapat menimpanya; jika Anda bisa, itu mungkin untuk menimpanya dengan perintah dummy yang tidak melakukan apa-apa.

Seperti yang disebutkan Simon, Anda dapat menggunakan ArcObjects / .NET dan beroperasi pada beberapa MXD. Meskipun saya menemukan bahwa ArcObjects menjadi sangat pemilih ketika MXD berisi koneksi data yang rusak atau salah satu dari berbagai lapisan layanan. Di ArcGIS 10, Anda akan memiliki arcpy.mapping dalam Python yang membantu dengan pekerjaan skrip terhadap MXD / LYR di Python. Ini masih sedikit buggy, tetapi mungkin bekerja untuk Anda tergantung pada apa yang Anda miliki di MXD Anda.

Jay Cummins
sumber
Hai. Ketika saya menulis balasan yang sangat panjang untuk Simon, saya tidak ingin menyalinnya (itu di atas), tetapi saya akan menghargai jika Anda mau berkomentar (jika Anda memiliki sesuatu untuk berkomentar). Terima kasih balasannya.
Jonatr
3

Meskipun saya sangat suka ArcGIS, saya harus mengakui bahwa kemampuan untuk membuat file tontonan yang disediakan di workstation ArcInfo sangat hilang di desktop. Banyak yang akrab dengan kemampuan Excel untuk merekam makro. Sepertinya ESRI bisa datang dengan kemampuan yang sama - bahkan setelah 10.0 ketika VBA sudah pensiun. Sebagai contoh, Neooffice memiliki kemampuan untuk merekam makro python .

ArcGIS Engine sangat dapat disesuaikan. Ini memungkinkan Anda untuk membuat alat fokus kecil yang melakukan satu hal dan melakukannya dengan baik. Ini termasuk proyek-proyek templat untuk Visual Studio, termasuk edisi Express gratis (?), Yang dapat digunakan untuk membangun aplikasi penampil peta ringan kecil tanpa pengkodean apa pun. Namun, untuk mendapatkan manfaat penuh dari ArcGIS Engine, Anda perlu menginvestasikan waktu untuk mempelajari bahasa pemrograman .NET.

Kirk Kuykendall
sumber
1
ini tidak semulus atau selengkap file tontonan, tetapi tab Hasil berisi riwayat proses geoproses Anda, yang dapat diseret dan dipindahkan ke Model Builder atau diekspor ke cuplikan python. Saya menggunakan ini sebagai semacam sejarah metadata yang ditingkatkan untuk dataset.
matt wilkie
juga ada riwayat alat gp sebagai file xml di sini% AppData% \ Roaming \ ESRI \ Desktop10.0 \ ArcToolbox \ History, file xml memiliki beberapa masalah dengannya yang akan dibahas pada 10.1. tapi mungkin itu pilihan yang menarik untuk Anda.
Gotchula
1

Ini adalah kenyataan membuat toolset menggerakkan basis data dan bukan sebaliknya. Anda terdengar seperti berada dalam posisi di mana Anda memerlukan struktur basis data yang lengkap, yang dapat Anda peroleh laporan, membuat pembaruan, menerbitkan peta, dll. Dengan atau tanpa bagian GIS. Membebaskan data dari alat akan memberi Anda kemampuan untuk menggunakan alat yang sesuai pilihan Anda. Itu sebabnya kami memiliki Standar Terbuka. Dari sana Anda dapat menggunakan aplikasi yang paling sesuai dengan tujuan yang ada dalam pikiran Anda. Saya baru saja melakukan percakapan pagi ini bahwa jika Anda merepresentasikan data dalam Kolom, itu tidak menjadikannya sebagai Lembar kerja Excel.

Responden lain membahas batasan Python, ini tidak benar. Mungkin ada lebih banyak hal yang dapat Anda lakukan dengan python karena pustaka yang luas maka kebanyakan bahasa lainnya, dan antarmuka tidak terlalu sulit. Yang membatasi adalah implementasi ESRI dari Python di ArcGIS. Jangan membingungkan keduanya.

westyvw
sumber
1

Anda mungkin ingin melihat MapWindow sebagai alternatif gratis .... membaca Shapefile dll, tetapi Anda harus tahu cara memprogram di C #. Tapi kemudian Anda memiliki kendali penuh atas segalanya ...

http://www.mapwindow.org/

timemirror
sumber
Masalahnya adalah mendapatkan pengetahuan dalam C #, yang tidak sepele dan sangat memakan waktu. Tapi terima kasih, aku akan mengingatnya.
Jonatr