İyi bir renk yoğunluğu ölçeği nasıl yapılır?


12

İstatistikte hiçbir şekilde iyi değilim ama bence doğru yere geldim. Sorum basit:

Benim sorunum, küçük bir ülkedeki birçok devletin nüfusunu karşılaştırmaktan ibaret, ancak bazı eyaletlerin nüfusu 3000.000, bazıları ise 2.000.
Bir harita üzerinde resim yapıyorum ve rengin “yoğunluğu” her eyaletteki nüfusun tüm ülkenin nüfusuyla nasıl karşılaştırıldığına bağlı.

Sorun, çok nüfusa sahip eyaletlerin gerçekten yoğun renklerle gösterilmesidir ve küçük eyaletlerin neredeyse hiç rengi yoktur.

Verileri "normalleştirmenin" veya karşılaştırılabilir yapmanın kolay bir yolu var mı?

Kendimi doğru bir şekilde açıklayıp açıklamadığımı bilmiyorum ama umarım bazıları bana yardımcı olabilir. Sorum net değilse lütfen açıklığa kavuşturacağım.

Yardımın için teşekkürler!



1
Aynı hat boyunca, www.0to255.com adresindeki degradeleri kontrol etmek isteyebilirsiniz.
Pete Wilson

R için bazı harita paketleri, bu tür bir sorunu önleyen yerleşik renk kodlarına sahiptir, ancak sormak istediğiniz şey bu muydu?
Fr.

Bunu özel bir harita üzerinde kullanıyorum ve (her değeri toplam popülasyona bölmek için) açık yaklaşım bana 0 ve 1 arasında bir değer veriyor (daha sonra bu değeri rengin "yoğunluğunu" seçmek için kullanıyorum). Sorun şu ki, çok uzak appart değerleri var, bu yüzden bazı durumlar tamamen renkli görünüyor ve bazıları neredeyse hiç renge sahip değil. İstatistiksel olarak bunun doğru olduğunu biliyorum, ancak veri sunumunu daha alakalı ve daha kolay anlaşılır hale getirmek istiyorum.
Zebs

Neden tek tip molalar kullanılır? Neden bir günlük ölçeği olmasın? Ya da belki de uygulamanızda bir anlamı olan kesme noktalarını seçebilirsiniz (örneğin kırsal / banliyö / kentsel).
JMS

Yanıtlar:


6

Üzgünüm, ama bana göre, kırılmayanı düzeltmeye çalışıyorsunuz. Aslında, kırılmamış olanı kırmaya çalışıyor olabilirsiniz. Geniş bir aralığı kapsayan bir nicel değişkeniniz (burada, nüfus) varsa, onu temsil etmek için kullandığınız metrik ne olursa olsun, geniş bir aralığı da kapsamalıdır.

Ancak renk (ve özellikle haritalar) ile ilgili her şey için, anahtar kaynak, bence ColorBrewer


2
Bir şeyleri kırmaya çalışıyorum; Aldığım valflerin istatistiksel olarak doğru olduğunu biliyorum, ancak kullanıcıların verileri anlamasını kolaylaştırmak istiyorum. Bu bir UI kararı.
Zebs

@Zebs: Bend, daha çok ..
naught101

5

İyi soru, Bir çözüm, renkleri daha düzgün bir şekilde dağıtmak veya daha düşük kuyruklu bir dağıtım yapmak için yeniden ölçeklendirmektir ... ancak o zaman efsaneniz yeterince açık olmalı, çünkü ölçeği deforme etmek bir şekilde haksız ...

Örneğin, R'de bir normalin bir forma yeniden ölçeklendirilmesi. (büyük kuyruklarınız olduğu ve daha küçük olmasını istediğiniz için belki de daha fazla gider, ancak prensip aynıdır)

X=array(rnorm(10000),c(100,100))
ramp=colorRamp(c("blue","cyan","white","yellow","red"),space ="rgb")
kleur <- rgb( ramp(seq(0,1,length=200)),max = 255)
par(mfrow=c(1,2))
image(X,col=kleur)### image without rescaling
Fn=ecdf(X)
ScaledX=array(Fn(X),c(100,100))
image(ScaledX,col=kleur)

3

Toplam nüfusa bölebilirsiniz. Bu, her şeyin 0 ile 1 arasında olmasını sağlar. Ölçekler hala çok farklıysa, bir günlük ölçeği düşünün.


2

Bunu sormak bana garip geliyor, ama gerçekten niceliksel bir miktarı tasvir etmek için renk kullanmayı taahhüt ediyor musunuz? Yüksekliği miktarı temsil eden her bir duruma bir çubuk koymanın bir yolu yok mu?

Başka bir yol da, coğrafi alanları temsil eden alanlarla birlikte haritayı göstermek için, her bir devletin alanının nüfus büyüklüğüyle orantılı olduğu bir harita ile - duyusal homunculusun yaptığı gibi. Ama bu acı verici bir çizim olurdu - Bunu otomatikleştirmenin hiçbir yolu bilmiyorum (olsa da)


İyi not!
robin girard

4
Birçok haritalama yazılım platformu bu yayında belirtilen özelliklere sahiptir. Harita söz konusu olduğunda niteliklere dayalı çarpıklıklara sıklıkla kartogramlar denir. Bkz. Gis.stackexchange.com/q/7406/751 . Bununla birlikte, bir haritaya gerçekleşen çubukların görselleştirilmesi renklerden daha kolay değildir. Çubuklar yan yana olmadığında, renk skalasında büyük bir sorun olmayan göreceli karşılaştırmalar yapmak zordur.
Andy W

Bir haritada optimumdan daha az çubuk olduğunu kabul ediyorum. Bunu yapmanın başka bir yolu da burada olduğu gibi ızgaralı bozulmalara sahip olmaktır : viewsoftheworld.net/?p=832 . Şahsen, bunları çözmenin oldukça zor olduğunu düşünüyorum, ancak bozulma miktarına bağlı olarak oldukça iyi yapılabilirler.
naught101

1

Belirttiğiniz hedef:

Küçük bir ülkedeki birçok eyaletin nüfusunu karşılaştırın.

Belirttiğiniz sorun:

Bazı eyaletlerin nüfusu 3000.000, bazıları ise 2.000'dir. Verileri "normalleştirmenin" veya karşılaştırılabilir yapmanın kolay bir yolu var mı?

Haritalamadan önce verilerinizi normalleştirmenin amacı

Haritayı neden yaptığınızdan emin olmadığım için bu cevap eksik olacak.

Bununla birlikte, keşfedilecek bazı düşünceler şunlardır: Haritanızın haritanın potansiyel okuyucularına ilginç bir anlam vermesi için verilerinizi normalleştirin, böylece haritanızda gördüklerini normalde düşündükleri bir kavramla ilişkilendirebilirler. Temel olarak, yeni normalize edilmiş sayılarınızın, harita okuyucularının anlamak için ilginç bulduğu bazı nitel kavramlarla bağlantılı olması gerektiğini düşünüyorum (rastgele tidbit: Measure = Miktar x Kalite, Hegel).

Verilerinizi normalleştirmenin iki önerilen yolu

1. Her eyalette ne kadar açık alan bulunduğuna dair bir fikir vermek için.

Nüfusun toplam durum alanına bölünmesini hesaplayarak nüfus yoğunluğu için yeni bir durum değişkeni oluşturun.

2. Devletlerin renklendirilmesinin birbiriyle zıt olmasını sağlamak için.

Her durumun ortalamasından sapmayı hesaplayarak yeni bir durum değişkeni oluşturun. Örneğin, aşağıdaki gibi nüfusa sahip 3 durumunuz olduğunu varsayalım:

  • A durumu 100'dür.
  • B durumu 50'dir.
  • C durumu 1'dir.

Ortalama 50 civarında olacaktır.

Her durum için yeni değişkenin değerleri aşağıdaki gibi olacaktır:

  • A durumu +50'dir (renk yoğun yeşil ).
  • B durumu 0'dır (renk gri ).
  • C durumu -49'dur (renk yoğun kırmızı ).

Pozitif sayıların negatif sayılarla kontrast oluşturduğu herhangi bir renk şemasını kullanabilirsiniz (haritalar için renk şeması örnekleri için google 'colorbrewer').

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.