วิธีการสร้างแผนที่ choropleth ที่น่าสนใจใน R?


18

ฉันได้ทำการทดลองกับเทคนิคการทำแผนที่ choropleth ใน R โดยได้รับประโยชน์จาก ggplot2 เพื่อสร้างกราฟที่สวยงามภายในแพ็คเกจการวิเคราะห์ข้อมูลที่ทรงพลัง

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

ภาพ QGIS

สิ่งที่ดีที่สุดที่ฉันสามารถทำได้โดยใช้ R (โดยใช้รหัสที่อธิบายไว้ที่นี่ ) คือแผนที่ทั้งสองนี้แผนที่แรกที่ใช้ GISTools ส่วนที่สองใช้ ggplot2:

GISTools choropleth ggplot2 choro

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

ดังนั้นคำถามคือ 2-fold: เป็นตัวเลือก ggplot2 ที่ดีที่สุดในการแก้ปัญหาการทำแผนที่ choropleth ใน R และถ้าเป็นเช่นนั้นฉันจะแก้ปัญหาของเส้นสีขาวที่ผิดพลาดได้อย่างไร?

รหัสจำลองเพื่อหาสิ่งที่ผมทำคือที่นี่

แก้ไข - เนื่องจากตัวเลือกเอาต์พุต choropleth () ทำให้น่าสนใจยิ่งขึ้น:

ใหม่ Rplot

ความอัปลักษณ์ของตัวเลือกนี้สามารถลดลงได้ด้วยการส่งออกที่ความละเอียดสูงกว่าและลบคำอธิบายออก ( มีตำนาน R อื่นให้เลือก) ยังไม่สามารถเปลี่ยนความหนาของเส้นได้ แต่เริ่มดีขึ้นแล้ว! เส้นสีแดงหมายถึงกระแสที่ไหลไปยังโซนที่จ้างมากกว่า 5,000 คน


1
แผนที่ R แรกจะดูดีกว่าถ้าคุณลดขนาดของรูปหลายเหลี่ยม (และอาจทำให้พวกมันโปร่งใสโดยสมบูรณ์ในตัวอย่าง QGIS แรก)
Andy W

3
เห็นด้วย แต่ฉันไม่รู้วิธีการทำเช่นนี้ - รหัสที่ฉันใช้คือ "choropleth (oas, v = oas $ to, เฉดสี)" ค้นหาเอกสารเพื่อลบบรรทัด แต่ไม่พบสิ่งใดเลย: cran.r-project.org/web/packages/GISTools/GISTools.pdf
RobinLovelace

1
@ RobinLovelace หากคุณใส่รหัส R ขึ้นมาเราก็สามารถช่วยคุณแก้ไขปัญหาเหล่านี้ได้ แต่ถ้าไม่มีตัวอย่างที่ทำซ้ำได้มันไม่ง่ายเลยที่จะระบุปัญหา ฉันขอขอบคุณความพยายามที่คุณได้ทำขึ้นมาเพื่อจับภาพหน้าจอ (มีประโยชน์) แต่ภาพเหล่านั้นเป็นเพียงไอซิ่งที่ควรจะส่งมอบให้บนเค้กของซอร์สโค้ด
SlowLearner

โปรดดูรหัสที่ทำซ้ำได้ที่มีอยู่ในโฟลเดอร์. zip นี้ตามที่ระบุไว้ข้างต้น: dl.dropbox.com/u/15008199/Rflows-simple.zip
RobinLovelace

@ RobinLovelace ขอบคุณที่น่าสนใจได้ดาวน์โหลด
SlowLearner

คำตอบ:


7

มีแหล่งข้อมูลที่ยอดเยี่ยมเกี่ยวกับเรื่องที่น่าสนใจอย่างยิ่งซึ่งรวมถึง:

จากการปฏิวัติ:

Choropleth Map R Challenge

Choropleth Challenge Results

จาก Stack Overflow.se:

การพัฒนาแผนที่เฉพาะเรื่องทางภูมิศาสตร์ด้วย R

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

รหัส R สำหรับแผนที่นี้หาได้จากนี่คือกรีนรูม


ขอบคุณมากสำหรับการตั้งค่าสถานะทรัพยากรที่ยอดเยี่ยมเหล่านี้และเพื่อแสดงแผนที่การว่างงานของสหรัฐอเมริกา ไม่มีตำนานแม้ว่า! ข้อเสนอแนะวิธีการแปลทรัพยากรเหล่านี้เป็นแผนที่ของเชฟฟิลด์? ตัวอย่างโค้ดเพื่อเรียงลำดับความพยายามที่ล้มเหลวของฉันในการทำแผนที่ choropleth โดยใช้ ggplot2 และข้อมูลที่ฉันได้รับจาก Sheffield เป็นอย่างมาก!
RobinLovelace

@ RobinLoveLace ฉันดีใจที่ลิงค์มีประโยชน์กับคุณ คุณไม่ควรมีปัญหาในชุดข้อมูลของคุณเองในสคริปต์ตัวอย่างจำนวนมากแม้ว่าคุณอาจต้องม้วนแขนเสื้อของคุณและทำการทดลองและข้อผิดพลาดเล็กน้อยในแพ็คเกจเฉพาะ น่าเสียดายที่ฉันไม่มีเวลาที่จะทำเพื่อคุณ - ขอโทษ!
แอรอน

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