งูเหลือมกรอบการแมปเว็บใดที่จะใช้ [ปิด]


19

ฉันสนใจที่จะพัฒนาแอปพลิเคชันการทำแผนที่เว็บ ฉันค่อนข้างคุ้นเคยกับ Python และฉันกำลังมองหาโครงร่างของ Python ตัวเลือกของฉันคืออะไร? ข้อดีและข้อเสียของแต่ละตัวเลือกคืออะไร

ฉันกำลังมองหาตัวเลือกง่ายๆตัวเลือกที่แสดงข้อมูลทางภูมิศาสตร์บนแผนที่และให้ผู้ใช้ใช้ "ข้อมูล" เพื่อรับรายละเอียดเพิ่มเติม ณ จุดนี้ฉันไม่ต้องการคำสั่งใด ๆ หรือฟังก์ชั่นแบบไดนามิก ฉันต้องการตัวเลือกที่มีเอกสารครบถ้วน


4
คุณจำเป็นต้องให้ข้อมูลเพิ่มเติม. คุณกำลังมองหาคุณสมบัติอะไรบ้าง? คุณต้องการทำแผนที่เว็บแบบไหน?
Devdatta Tengshe

คำตอบ:


15

ลองFoliumมันง่ายมากในการเริ่มต้น: คุณสร้างโครงการของคุณโดยใช้ Python และคุณเพิ่งเปิดแผนที่ผลลัพธ์

หากคุณต้องการลึกกว่านี้คุณสามารถจัดเรียงตามระดับความเรียบง่ายจากมากไปน้อย:

  • GeoDjangoเพิ่มเติมด้วยเช่นDjango-แผ่นปลิว หมอที่ดีที่สุดจริงๆที่นี่
  • FeatureServerฝั่งเซิร์ฟเวอร์มากขึ้น แต่เป็นการสาธิต OpenLayers ( อัปเดตล่าสุด 2558 )
  • MapFishเพียงอย่างเดียว ขึ้นอยู่กับ Pylons ล้าสมัยในขณะนี้ ( ปรับปรุงล่าสุด 2011 )
  • Papyrusการรวม Mapfish ใน Pyramid ซึ่งเป็นกรอบ Python ที่รู้จักกันดี ( ปรับปรุงล่าสุด 2017 )

Folium เปรียบเทียบกับ GeoDjango ในแง่ของความสามารถที่พวกเขามีอย่างไร
หลากสี

2
Folium = ส่วนใหญ่สำหรับการแสดงตัวอย่างข้อมูลในแผนที่เว็บและสร้างแผนที่เว็บแบบคงที่ ไม่มีความสามารถในการแก้ไขที่นี่ ในอีกด้านหนึ่ง GeoDjango = เพื่อจัดการข้อมูลในเว็บไซต์แบบไดนามิก คุณจะต้องมีรหัสเพิ่มเติม แต่คุณสามารถสร้างเว็บไซต์แบบเต็มได้เนื่องจาก GeoDjango เป็นเพียงส่วนขยายและขยายไปยังเว็บเฟรมเวิร์กของ Django (เพื่อสร้างเว็บไซต์แบบเต็ม) ความสามารถในการแก้ไขที่มีอยู่การจัดการผู้ใช้และกลุ่มก็สามารถทำได้เช่นกัน
ThomasG77

8

คุณอาจจะลอง GeoDjango

อาจเป็นสิ่งที่เกินความจำเป็นในสิ่งที่คุณต้องการ แต่ดูเหมือนจะตรงตามเกณฑ์ที่คุณต้องการ มันเป็นเว็บเฟรมเวิร์กที่ขับเคลื่อนด้วย python ซึ่งรวมโครงการ GIS ที่ยอดเยี่ยมมากมายเช่น gdal / ogr, OpenLayers และรองรับการใช้ฐานข้อมูลทางภูมิศาสตร์รวมถึง postgis / postgres

ฉันได้ทดลองกับมันเป็นเวลาหลายเดือนแล้วและชอบมันจนถึงตอนนี้ มีช่วงการเรียนรู้แน่นอน แต่เอกสารประกอบค่อนข้างดีและมีชุมชนผู้ใช้ที่แข็งแกร่ง

ฉันพบว่ามันเป็นแพลตฟอร์มที่มีความยืดหยุ่นและเป็นผู้ใหญ่มากกว่าที่ฉันคาดไว้ ดูถ้าคุณยังไม่ได้


8

หากคุณต้องการเว็บเซอร์พื้นฐานในหลามมีสองวิธี:

  • geodjango นี่เป็นส่วนขยายอย่างเป็นทางการที่รวมอยู่ใน django มันใช้งานได้ดี แต่มันก็เป็นศูนย์กลาง django ถ้าคุณชอบ django มันสมบูรณ์แบบ
  • flask (หรือ webframework อื่น) + geoalchemy2 (ส่วนขยายของ sqlalchemy) + shapely (lirairy สำหรับการจัดการ Geo-object) บางทีมันอาจจะยากกว่า geodjango แต่มันเป็นทางออกที่ฉันโปรดปราน ฉันชอบ jinja2 และ sqlalchemy มากกว่าแม่แบบและ dj ของ django

จากนั้นเสียบเข้ากับ openlayers หรือ leaflet

แต่ดูที่โซลูชันมาตรฐาน WMS หรือเซิร์ฟเวอร์ WFS มันจะมีประโยชน์


0

เรื่องของ MapFish นั้นเป็นอย่างไร

เฟรมเวิร์กที่ยืดหยุ่นและสมบูรณ์สำหรับการสร้างแอปพลิเคชันการทำแผนที่เว็บที่สมบูรณ์ ... ขึ้นอยู่กับกรอบงานเว็บ Pylons Python

ไม่สามารถอ้างสิทธิ์ใช้งานได้ แต่ติดตั้งไว้ล่วงหน้าในเครื่องOSGeo Liveของฉัน- OpenLayers และ TileMill เป็น 'กรอบงาน' การแมปเว็บของฉัน (อะไรก็ตามที่มีความหมาย) ที่เลือก จากเว็บไซต์และความร่วมมือของพวกเขากับOSGeoฉันจะไม่ลังเลที่จะแนะนำการทดสอบเทคโนโลยีของพวกเขาแม้ว่าตามที่ระบุไว้ข้างต้นความคิดเห็นที่คุณเลือกขึ้นอยู่กับแอพพลิเคชั่นไม่ใช่แค่ภาษาที่เขียน

การสาธิตออนไลน์ของพวกเขาดูเหมือนจะทำงานได้อย่างมีประสิทธิภาพและดูเหมือนว่าโครงการที่มีโมเมนตัม: ทำไมไม่ลองใช้'การเริ่มต้นอย่างรวดเร็ว'และลองดูว่ามันเหมาะสมกับความต้องการของคุณอย่างไร


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