กราฟ“ United States of Reddit” นี้ถูกสร้างขึ้นอย่างไร


9

ด้านล่างเป็นกราฟจาก p 202 ของDataclysmของ Christian Rudder ถึงแม้ว่า James Dowdell จะสร้างขึ้นมาก็ตาม มันแสดงให้เห็นถึงความสัมพันธ์ระหว่างเว็บไซต์ย่อย 200 อันดับแรกซึ่งเป็นพื้นที่ที่น่าสนใจบนreddit.comซึ่งผู้ใช้สามารถส่งลิงค์ความคิดเห็นและคะแนนโหวต สิ่งเหล่านี้คล้ายกับแท็กในไซต์นี้ ขนาดของภูมิภาค subreddit แสดงถึงความนิยม subreddits ถูกจัดกลุ่มโดยการแสดงความคิดเห็นข้ามและโทนสีเข้มแสดงถึงเปอร์เซ็นต์ของคนที่อยู่ใน subreddit นั้นและไม่โพสต์ถึงผู้อื่น

นี่เป็นเพียงการแบ่งพาร์ติชัน Voronoi มาตรฐานที่มีการระบายสีเพื่อความโดดเดี่ยวหรือมีส่วนเกี่ยวข้องมากกว่านี้หรือไม่?

เราจะทำสิ่งเหล่านี้ได้อย่างไร?

สหรัฐอเมริกา Reddit


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

คำตอบ:


7

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

คำตอบง่ายๆคือแน่นอนสิ่งที่คนอื่น ๆ ได้สันนิษฐาน: นี่คือhttp://en.wikipedia.org/wiki/Voronoi_diagram เราใช้แนวคิดเดียวกันในหน้า 194 ที่ไซต์ voronoi มีคู่ละติจูดลองจิจูดที่ระบุโดย craigslist.org

น่าเสียดายที่ความรู้นี้ไม่ได้มีประโยชน์มากนัก ด้วยกราฟของ Craigslist จะเป็นการล้างค่าที่จะใช้สำหรับไซต์ แต่ Dataclysm ใช้อุบายวิเศษอะไรเพื่อกำหนดพิกัด x / y ในกราฟนี้

คำตอบนั้นเกี่ยวข้องมากกว่าที่คนส่วนใหญ่คาดหวังและฉันไม่สามารถพูดได้ว่าฉันแนะนำให้ทำซ้ำสิ่งที่เราทำ ฉันเดิมพันคนอื่นที่นี่สามารถแนะนำวิธีการที่ได้รับผลลัพธ์เดียวกันมากขึ้นหรือน้อยลงและง่ายกว่ามาก

ความจริงคือ:

คริสเตียนกับฉันกลับไปกลับมามานานกว่า 3 เดือนในการสร้างกราฟสำหรับบทนี้ว่าเราไม่สามารถทำงานได้ แต่ผลลัพธ์ของวิธีการหนึ่งมักจะป้อนเข้าสู่ถัดไป

  1. สิ่งที่สำคัญที่สุดโชคไม่ดีที่เกี่ยวข้องกับเทคนิคและสินทรัพย์รูปภาพบางอย่างที่ฉันไม่มีอิสระที่จะสำรวจหรือแบ่งปันในวิธีที่มีความหมายใด ๆ เพราะเรายังอาจใช้พวกเขาอย่างใด สิ่งที่ฉันจะพูดคือเราใช้http://en.wikipedia.org/wiki/Graph_theory#Gซับซ้อนที่เรารวบรวมโดยได้รับอนุญาตจากข้อมูลของ Reddit เกี่ยวข้องกับ userids และ subreddits และเราเล่นกับกราฟนี้และอนุพันธ์ต่าง ๆ ของมันอยู่ภายในhttp://gephi.github.io/(ฉันเป็นแฟนของ "OpenOrd" โดยเฉพาะวันนี้) ในความเป็นจริงเรามีภาพที่สวยงาม - น่าจะเป็นไฮไลต์ของหนังสือเล่มนี้ถ้ามันถูกตีพิมพ์ - แต่ในขณะที่มันจะทำงานได้ดีบนเว็บไซต์มันก็ไม่ได้พิมพ์ออกมาดีในหนังสือ - ห้องไม่พอหรือความละเอียด ตอนแรกคริสเตียนคิดว่าการตั้งค่าเป็นสิ่งที่พับในหนังสือ แต่มันก็ไม่คุ้มค่าสำหรับ Crown

  2. อย่างไรก็ตาม ณ จุดนี้เรามีภาพที่มีพิกัด x / y สำหรับ subreddits และอย่างน้อยก็มีการจัดเรียงอย่างถูกต้องในพื้นที่ x / y พวกเรากำลังรีบเพราะกำหนดส่งกำลังใกล้เข้ามา ฉันเป็นโปรแกรมเมอร์คนแรกและเป็นคนที่สองข้อมูลดังนั้นเพื่อรองรับขอบเขตที่แคบมากของหน้าในหนังสือและเวลาที่เหลืออยู่ในนาฬิกาสัญชาตญาณของฉันคือการเขียนโปรแกรมใน Box2D ซึ่งจำลองขอบเขตของหน้าเป็น ผนังวางกราฟเวอร์ชั่นที่หดตัวลงมากและจำลองการเติบโตของโหนดเหล่านั้น (ไม่เป็นธรรมชาติสำหรับ Box2D โดยทางคาดว่าวัตถุแข็งเกร็งที่ไม่เปลี่ยนแปลง) จนกว่าทุกอย่างจะถูกฟาดกับผนังและกันและกัน โหนดเติบโตในอัตราที่สัดส่วนกับขนาดของ subreddit ที่พวกเขาเป็นตัวแทนซึ่งหมายความว่าขนาดสุดท้ายก็จะเป็นสัดส่วนในลักษณะเดียวกันสกรีนช็อตของโปรแกรม box2d ขณะทำงาน

  3. ผลลัพธ์ที่ได้นั้นดูไม่ดีเลย แต่มันให้บางสิ่งที่มีค่ามากแก่ฉัน: ไซต์ voronoi ฉันใช้เซนทรอยด์ของรูปหลายเหลี่ยม box2d ที่เกิดขึ้นใส่มันผ่านกระบวนการมาตรฐานและนั่นคือสิ่งที่ใช้สำหรับกราฟในหนังสือ ฉันใช้ป้ายกำกับข้อความด้วยมือใน photoshop

อนึ่งการระบายสีเซลล์สัมพันธ์กับสถิติที่เราพัฒนาขึ้นเพื่อสร้างกราฟกลับมาใน (A)


1
ยินดีต้อนรับสู่เว็บไซต์ นี่ใกล้เคียงกับที่ฉันอาจลองทำ ใช้เค้าโครงกราฟใดก็ได้เพื่อกำหนดพิกัด xy ให้กับโหนด (อาจเป็นไปได้ในบางเลย์เอาต์ตามแรงที่จะทำให้เซลล์ประมาณขนาดที่คุณต้องการตามการระบุน้ำหนักและมวลขอบ แต่ฉันสงสัยว่าพวกมันจะถูกต้องแน่นอน) หลังจากสร้างพื้นที่ voronoi ของเลย์เอาต์กราฟต้นฉบับแล้วฉันจะ ใช้เครื่องมือ cartogram เช่นScapetoadเพื่อทำให้พื้นที่สิ้นสุดเป็นสัดส่วนกับสถิติที่น่าสนใจ สิ่งนี้จะคล้ายกับโปรแกรมที่คุณแนะนำใน box2d
Andy W

0

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

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