Qgis_core có thể làm việc với phân phối python bên ngoài (như Anaconda) không?


23

Tôi đã xây dựng một ứng dụng python có GUI riêng. Tôi đang cố gắng sử dụng qgis.core / PyQGIS làm chỉ hiển thị bản đồ. Cụ thể, tôi có anaconda 2.3 và phân phối trăn của nó (2.7.11).

Sau khi nghiên cứu về các bài đăng trên chủ đề này, có vẻ như chương trình này chỉ có thể hoạt động nếu ứng dụng tôi đang xây dựng (hoặc ứng dụng của bất kỳ ai khác) sẽ cần "sống trong thế giới QGIS", tức là chuyển tất cả các phụ thuộc sang phân phối trăn của QGIS. Ai đó (tốt nhất là từ nhóm QGIS) có thể đưa ra một câu trả lời dứt khoát cho vấn đề này.


Bạn chỉ có thể thêm các gói trang web qgis vào mã của mình bằng sys. sys.path.append ("đường dẫn \ đến \ site-lib")
geodranic

Đây chỉ là một ý tưởng, vì bản thân tôi đã phải vật lộn với vấn đề này, nhưng giả sử bạn biên dịch chương trình của mình thành một chương trình thực thi bằng cách sử dụng pyinstaller, không loại bỏ vấn đề phụ thuộc python? Cho dù bạn đang sử dụng một số công cụ từ Anaconda và một số công cụ từ QGIS, pyinstallerxuyên suốt tất cả mọi thứ và xử lý các module riêng của mình ,,, ứng dụng mà bạn gói không thực sự quan tâm đến những gì môi trường ban đầu bạn phát triển tất cả mọi thứ trong ...
user32882

Câu trả lời:


1

Bạn có thể thêm phân phối python của QGIS vào dự án của bạn ở Pycharm. Dưới đây là các bước chi tiết về url này.

https://github.com/apulverizer/pyspatialopt/wiki/Using-PyQGIS-with-PyCharm

Bằng cách này, bạn có thể thêm phân phối python của qgis và sau đó sử dụng chúng trong ứng dụng gốc của bạn, có thể chỉ là một phần bản đồ.

Câu trả lời / ví dụ này chỉ có thể thực hiện được với dự án PyCharm, vui lòng giải thích thêm về môi trường python của bạn.


0

QGIS 2.x đã được xuất bản với phiên bản riêng của python (2.7). Bất kỳ loại kết nối từ các bản phân phối python khác đều có thể nhưng không được khuyến khích.

Cách dễ nhất cho bạn là sử dụng trăn của chính QGIS. Sau đó, chỉ cần cài đặt các phụ thuộc theo yêu cầu của bạn vào nó và bạn sẽ sẵn sàng để đi.

Trong trường hợp sử dụng cú pháp R trong mã của bạn, chỉ cần đọc này .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.