จะปรับปรุงการสร้างภาพข้อมูลของรูปหลายเหลี่ยมที่ซ้อนกันได้อย่างไร


17

ฉันต้องการคำแนะนำบางอย่างเกี่ยวกับวิธีปรับปรุงการสร้างภาพข้อมูลของการทำแผนที่

ผู้ใช้สามารถเลือกสปีชีส์ที่แตกต่างกันและแอพ webmapping แสดงการกระจายทางภูมิศาสตร์ (เซลล์องศาหลายเหลี่ยม) แต่ละสปีชีส์ที่มีช่วงของสี (เช่นสีส้มเข้มกว่าที่เราหาข้อมูลเพิ่มเติม

ปัญหาคือเมื่อทับซ้อนกันของสปีชี่มากกว่าหนึ่ง สิ่งที่ฉันกำลังทำอยู่ก็เพื่อคำนวณการผสมสีสองสีโดยใช้http://www.xarg.org/project/jquery-color-plugin-xcolor/

อย่างที่คุณเห็นในภาพนี้สีที่เกิดจากการทับซ้อนกันของสองสปีชีส์ (ผสมสีน้ำเงินและสีเหลือง) ไม่ง่ายเลย

ป้อนคำอธิบายรูปภาพที่นี่

มีคนมีความคิดหรือรู้ว่าเครื่องมือใดที่คล้ายกันที่จะได้รับแรงบันดาลใจ? สำหรับการสร้างรูปหลายเหลี่ยมฉันใช้ d3.js ดังนั้นหากจำเป็นต้องสร้างคุณสมบัติ SVG ที่ซับซ้อนยิ่งขึ้นฉันสามารถลองใช้ได้

แนวคิดบางอย่างที่ฉันมี ...

  1. ยิ่งข้อมูลเกี่ยวกับรูปหลายเหลี่ยมมากเท่าไรก็ยิ่งทำให้เส้นขอบหนาขึ้น (หรือแต่ละส่วนของเส้นขอบที่มีสีสอดคล้องกัน)
  2. เพิ่มป้ายกำกับที่กึ่งกลางของรูปหลายเหลี่ยมโดยบอกว่ามีสปีชีส์ทับซ้อนกันกี่ชนิด
  3. แบ่งรูปหลายเหลี่ยมในส่วนต่าง ๆ แต่ละคนมีสีสปีชีส์ที่สอดคล้องกัน

1
คุณรู้จำนวนสูงสุดของสายพันธุ์ที่อาจทับซ้อนกันเป็นสี่เหลี่ยมหรือไม่?
Baltok

noops ... เพื่อให้แผนที่ (และเคล็ดลับเครื่องมือ) สามารถอ่านได้ฉันสามารถ จำกัด 10 หรือ 15 สายพันธุ์ที่แตกต่างกัน
user1249791

1
ด้วยการทับซ้อนที่อาจเกิดขึ้นมากมายในหนึ่งตารางฉันคิดว่าความคิดของคุณในการแสดงจำนวนสปีชีส์ที่ทับซ้อนกันอาจเป็นวิธีที่สะอาดที่สุด ความแตกต่างของสีอาจใช้งานได้หากคุณกำหนดสีที่เฉพาะเจาะจงสำหรับจำนวนของการทับซ้อนและมีคำอธิบาย
Baltok

มีสปีชีส์ต่างกันกี่ชนิด?
Dan C

ไม่ฉันไม่ทราบว่ามีสปีชีส์ต่างกันกี่ชนิดในข้อมูล ผู้ใช้สามารถเลือกจากสัตว์หลายร้อยชนิดซึ่งสามารถซ้อนทับ (หรือไม่ก็ได้)
1249791

คำตอบ:


4

สำหรับหลายสปีชีส์สัญลักษณ์รูปหลายเหลี่ยมของแผนภูมิวงกลมอาจทำงานได้ แต่จอแสดงผลชนิดนี้อาจยุ่งมาก

ฉันสังเกตเห็นว่าศูนย์กลางการทำแผนที่มี 77 โพสต์ในหัวข้อโพลีกอนซ้อนทับกันแสดง:

http://search.esri.com/results/index.cfm?do=mappingcenter&h=10&ho=0&q=overlapping+polygons


4

การฟักไข่เป็นหนึ่งในวิธีสุดท้ายของฉัน

นอกเหนือจากนั้นฉันเคยทำงานในโครงการที่เรามีปัญหาต่อไปนี้เพื่อแก้ไขภายในไม่กี่ชั่วโมง:

  • เราจำเป็นต้องแสดงรูปหลายเหลี่ยมที่ทับซ้อนกันด้วยแอตทริบิวต์บิต (Y / N) หลายอย่าง
  • เราต้องการหลีกเลี่ยงการปิดบังข้อมูลที่ตรงกันอื่น ๆ ในแผนที่เช่นคะแนนป้ายกำกับ
  • เราต้องการให้ผู้ใช้งานนิทรรศการที่พิมพ์ออกมาสามารถดูแผนที่และระบุได้อย่างรวดเร็วว่าพื้นที่นั้นได้รับการยืนยัน (Y) สำหรับคุณลักษณะมากมายหรือไม่ (ในกรณีนี้ 4) โดยไม่ต้องค้นหาการตีความที่ซับซ้อนของสัญลักษณ์ .

ตำนาน

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

รูปหลายเหลี่ยมที่ทับซ้อนกัน

วิธีที่เราประสบความสำเร็จคือการใช้โครงร่างรอยประกับการชดเชยเชิงลบและการเติมกลวง

Green: Offset: -4, Cartographic Line Template: xxxxoooo
Yellow: Offset: -4, Cartographic Line Template: ooooxxxx
Orange: Offset: -2, Cartographic Line Template: xxxxoooo
Red: Offset: -2, Cartographic Line Template: ooooxxxx

คำตอบที่ดี! ฉันแก้ไขโพสต์ของคุณเพื่อปรับปรุงการอ่านและลบออกลายเซ็นของคุณต่อความช่วยเหลือ
พอล

2

ดูเหมือนว่าทักษะการเขียนโปรแกรมของคุณจะมีความสามารถเพียงพอที่คุณจะสามารถใช้งานได้
คำนวณจำนวนสปีชีส์และกำหนดสัญลักษณ์สำหรับนั้นหรือใช้การซ้อนทับของแฮทช์ซึ่งอาจเป็นมุมของแฮทช์แสดงให้เห็นถึงจำนวนสปีชีส์
เช่นมุมที่ 10 หมายถึง 2 สปีชีส์, 20 หมายถึง 3 และอื่น ๆ

ฉลากสามารถใช้กับการเข้ารหัสเช่น 24 หมายถึงสปีชีส์ 2 และสปีชีส์ 4, 248 = สปีชีส์ 2, 4 และ 8 ตัวอย่างเหล่านี้ใช้งานไม่ได้ exaclty เหมือนที่ฉันคิด แต่ฉันรู้ว่าฉันได้เห็นแล้ว ค่าหนึ่งชุด

นี่เป็นแนวคิดบางอย่างที่ฉันมีเพียง "การดลใจ" อย่างรวดเร็ว มีคำถามเกี่ยวกับ gis stackexchange ซึ่งเป็นหนึ่งในคำถามที่มีคนดูมากที่สุดและอาจให้การอ่านและข้อมูลเชิงลึกมากขึ้น

นั่นคือถ้าการอ่าน (เวลา) เป็นตัวเลือก
เกิดอะไรขึ้นกับชั้นหนังสือของคุณ
และจากนั้นก็มีความหวังที่เสียงหวือจะช่วยตอบได้
หรือคุณเพียงแค่ค้นหาคำตอบจาก whuber และรับแรงบันดาลใจบ้าง

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