เชื่อมโยง QGIS กับ Anaconda Python Distribution: Spyder, iPython Notebook, pip, scikit-Learn


20

ฉันมีอนาคอนด้าเป็น Python distro หลักของฉันและต้องการเส้นทาง Python ที่เกี่ยวข้องกับสคริปต์ QGIS ผ่านมัน ด้วย Anaconda ฉันมี Spyder สามารถติดตั้งแพ็คเกจด้วย pip ได้อย่างง่ายดายและสามารถเปิดเว็บเบราว์เซอร์ iPython Notebook สำหรับการแชร์หน้าจอและการจัดเก็บรหัสที่ฉันตั้งใจจะใช้กับข้อมูลของฉันก่อนระหว่างและหลังการเปลี่ยนแปลงใน QGIS (ซึ่งเรียก แพคเกจเช่น Scikit เรียนรู้)

ฉันไม่สามารถหาสิ่งที่มีประโยชน์ได้ทุกที่เกี่ยวกับวิธีลิงก์ทั้งสอง

ฉันใช้ Windows 8.1 แต่ถ้าสามารถทำได้เฉพาะใน Linux ฉันสามารถลองติดตั้งบนเดสก์ท็อปของฉันซึ่งใช้งาน Mint 13 ฉันต้องมีเว็บแคมและไมโครโฟนซึ่งพบได้ในแล็ปท็อปของฉัน แต่ไม่ใช่ เดสก์ท็อปในขณะนี้สำหรับการสาธิตเชิงโต้ตอบและการสัมภาษณ์ในวันอังคาร


2
บน Windows หากคุณใช้ OSGeo4W สำหรับตัวติดตั้งของคุณคุณจะต้องใช้การติดตั้ง Python ต่อไปซึ่งเป็นสิ่งที่ QGIS ลิงก์ไปยังเพื่อสร้างอินสแตนซ์ Python interpreter ภายใน คุณสามารถใช้ Python distros อื่น ๆ ได้ แต่คุณจะต้องรวบรวม QGIS จากแหล่งที่มาด้วยตัวคุณเองซึ่งก็หมายถึงการพึ่งพาเช่นโมดูล P-C ที่รวบรวม (QScintilla และอื่น ๆ ) จำเป็นต้องสร้างขึ้นจากการติดตั้ง Python นั้น กล่าวอีกนัยหนึ่งอาจเป็นการยากที่จะสร้างจากแหล่งที่มาโดยใช้ OSGeo4W สำหรับการพึ่งพาในขณะที่ใช้ Python ที่แตกต่างจาก OSGeo4W
dakcarto

คุณหมายถึงอะไรสำหรับ "วิธีเชื่อมโยงทั้งสอง" การแลกเปลี่ยนข้อมูลกับ QGIS ไม่จำเป็นต้องมีการรวมกับงูใหญ่ จะมีประโยชน์ในการมี QGIS ใน anaconda env แต่มันไม่ง่ายเลยในการตั้งค่าการพึ่งพางูใหญ่งูใหญ่ทั้งหมดใน OSGeo4W env
Luigi Pirelli

นี่เป็นคำถามที่เกี่ยวข้องมากสำหรับ QGIS บน Windows การแจกจ่าย Python ที่มาพร้อมกับ OSGeo4W มีโมดูลที่ล้าสมัยจำนวนมาก (เช่น numpy, scipy) และมีจำนวนของโมดูลที่ต้องมีการรวบรวมและ / หรือการเชื่อมโยง (netCDF4, rasterio) ที่pipไม่สามารถทำได้ - แต่condaสามารถทำได้ อนาคอนด้ามีสูตรสำหรับการสร้างgdalและสิ่งอื่น ๆ อีกมากมายดังนั้นฉันจึงสงสัยว่าแอนนาคอนดาไม่สามารถให้การพึ่งพา QGIS ได้จำนวนเท่าไร
j08lue

บน Linux การทำให้ Anaconda Python ของคุณเป็น Python ที่เป็นค่าเริ่มต้นอาจช่วยได้ ( export PATH="/path/to/anaconda/bin:$PATH")? หรือ/usr/bin/pythonฮาร์ดโค้ดใน QGIS?
j08lue

คำตอบ:


3

ใน Windows ตัวเลือกที่ดีที่สุดของคุณคือการใช้การแจกจ่าย Python ที่สามารถติดตั้งผ่าน OSGeo4W และติดตั้งpipผ่านตัวติดตั้ง OSGeo4W ได้เช่นกัน

แม้ว่าpipจะไม่สามารถติดตั้งแพคเกจจำนวนมากที่ต้องการการเชื่อมโยงไปยังไลบรารีภายนอก (เช่น netCDF หรือ GEOS) ได้จากดัชนีแพ็คเกจ แต่วิธีแก้ไขคือการติดตั้งไบนารีที่รวบรวมล่วงหน้าแบบไม่เป็นทางการจากhttp://www.lfd.uci.edu/~gohlke/ pythonlibs /และติดตั้งไว้ใน OSGeo4W pip install path-to-downloaded-binary.whlเชลล์ผ่าน

[แก้ไข 2018] ขณะนี้ยังมีตัวเลือกในการติดตั้ง QGIS ผ่านทาง (Ana) conda:

conda install -c conda-forge qgis

2

ซึ่งสามารถทำได้กับสภาพแวดล้อมที่มีสภาพอากาศ คุณจะต้องสร้างสภาพแวดล้อมที่มีเวอร์ชั่นไพ ธ อนตรงกันกับการติดตั้งแบบ qgis (คุณต้องแน่ใจว่าทั้งการติดตั้งแอนคอนดาและ qgis เป็นสถาปัตยกรรมเดียวกัน) จากนั้นคุณต้องเพิ่มพา ธ ที่เกี่ยวข้องไปยังพา ธ ของระบบสภาวะแวดล้อมและพา ธ แบบหลาม มีเส้นทางที่หลากหลาย qgis อยู่ข้างหน้าเส้นทางของระบบเมื่อเริ่มต้นและคุณสามารถดูเส้นทางทั้งหมดได้จากเมนูตัวเลือก qgis iirc ในการเพิ่มเส้นทางไปยังสภาพแวดล้อม CONDA ให้ดูที่นี่http://conda.pydata.org/docs/using/envs.html#windows เมื่อคุณเปิดใช้งานสภาพแวดล้อมเส้นทางที่เกี่ยวข้องทั้งหมดจะถูกเพิ่มและคุณควรจะสามารถนำเข้า qgis libs

สิ่งนี้จะไม่ยอมให้คุณใช้อนาคอนดาผ่าน qgis แต่มันจะให้คุณใช้สควอช qgis และอื่น ๆ ผ่านอนาคอนด้า

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.