Kalitatif Renk Paleti - fotokopi kasası (gri tonlamaya hazır)


12

Siyah beyaz yazıcılarda basılabilen 5 sınıf nitel renk paleti arıyorum.

Aşağıdaki resimde renkli bir harita (üst: nitel, alt: sapma) ve her birinin gri tonda nasıl göründüğü (sağ taraf) gösterilmektedir. Her iki renk paleti ( Set3ve Spectral) ColorBrewer'a aittir .

  1. [UL] Nitel Set3
  2. [UR] Set3 Gri tonlamalı nitel
  3. [LL] Uzaklaşma Spectral
  4. [LR] SpectralGri tonlamada sapma

resim açıklamasını buraya girin

Özellikle sağ üst görüntüdeki gruplara dikkat çekiyorum, alt (spektral) mükemmel değilse çok daha iyi (hangisinin mavi veya kırmızı olduğunu söyleyemem). ColorBrewer'a göre Spectral renk şeması (burada kullandığım) sadece photocopy safe5 sınıf palet için.

Sınıfları (3 veya 4'e) azaltmak bir seçenek olabilir, ancak korkarım ki bu haritanın amacı değildi.

Bu muhtemelen GIS yazılımları ile ilgili değildir, ancak temelde ColorBrewer, cpt-city ve diğer paletler ve renk rampaları sunan QGIS kullanıyorum.


@obrl_soil bunun Viridis renk kümesi olduğunu önerdi

resim açıklamasını buraya girin


@underdark bunun iki tür 4 colors + whiteyaklaşım olduğunu öne sürdü .

resim açıklamasını buraya girin

SOL: Turuncu-Kırmızı + beyaz (sıralı), SAĞ: Mor-Turuncu + beyaz (ayrılan)


Zaten iyi bir yanıt buldunuz, ancak sizi güzel renk şemaları oluşturmanıza izin veren colorbrewer2.org ile tanıştırmak istiyorum
LaughU

@LaughU Aslında bahsettiğim bir web sitesi ... açıkça belirtilmemişse özür dilerim. Ama teşekkürler, bu gerçekten iyi bir kaynak, katılıyorum.
Kazuhito

Yanıtlar:



10

ColorBrewer'ın önerdiği gibi, sadece 5 sınıf spektral renk şeması fotokopi makinesi (yani gri tonlama) kullanımı için "güvenli" dir. En kolay çözüm, tarama gibi sınıfları ayırmanın başka bir yolunu kullanmaktır.

QGIS'te, dolgu fırçasını değiştirerek bir sınıflandırmada 5 farklı kapak seçmek basit bir konudur.

resim açıklamasını buraya girin

Veya farklı mesafelerde Nokta Deseni dolgusu kullanarak:resim açıklamasını buraya girin


1
Teşekkürler @iant, ama almalıyım (yani, ColorBrewer), bu özel kümeden başka 5 sınıf renk şeması üretmenin bir yolu olmadığını ima ediyor mu? Eğer öyleyse yumurtadan çıkarken sorun yaşamıyorum.
Kazuhito

7

Colorbrewer 2.0 temel olarak bize 5 renk ile "fotokopi güvenli" renk düzeni olmadığını söyler, bu yüzden 4 renk çözümü:

resim açıklamasını buraya girin

Tabii ki, "beyaz" ı potansiyel bir 5. renk olarak saymaz, bu nedenle bu çözüm hala uygulamanız için yeterli olabilir.


1
Güzel. Beyaz eklemek parlak bir fikirdi akla gelmedi (ColorBrewer'dan vazgeçmeye neredeyse hazırdım). Teşekkürler!
Kazuhito

4

Ben de aynı problemi yaşadım. 8 sınıfa ihtiyacım vardı. En azından kategorileri mümkün olan en belirgin hale getirmenize olanak tanıyan bir geçici çözüm oluşturdum. Varsayılan olarak, colorbrewer tarafından oluşturulan her rengin doygunluk değerleri arasındaki mesafeyi artırır. Bu şekilde s / b baskıda en belirgin kategorileri elde edersiniz. İki parsel aşağıda gördüğünüz gibi biraz değişiyor, ancak bw'de fark yaratabilir.

Betiği kullanmak için R'yi bilmeniz gerekir:

library("ggplot2")
library("colorspace")
library("RColorBrewer")


# display all color scales with n=8
display.brewer.all(n = 8,type = "div")
# choose a brewer
brewer.pal(8,"Spectral")
# transform palette to HSV values
(palette.HSV<-as(hex2RGB(brewer.pal(8,"Spectral")), "HSV")) 

# plot
plot(1:8,1:8,pch=21,bg=hex(palette.HSV),col=hex(palette.HSV),cex=5)

# sort and get indices of HSV values
sort(palette.HSV@coords[,2],index.return=TRUE)

# calculate steps for distance
9/8 # 8 classes until 0.9 saturation

# change accordingly
palette.HSV@coords[1,2]<-0.7875 # swapped with second
palette.HSV@coords[2,2]<-0.675
palette.HSV@coords[3,2]<-0.5625
palette.HSV@coords[4,2]<-0.3375
palette.HSV@coords[5,2]<-0.225
palette.HSV@coords[6,2]<-0.1125
palette.HSV@coords[7,2]<-0.45
palette.HSV@coords[8,2]<-0.9

plot(1:8,1:8,pch=21,bg=hex(palette.HSV),col=hex(palette.HSV),cex=5)

# save your costum colorscale
my.scale<-hex(palette.HSV)

değişen değerler değişen değerler

orijinal değerler resim açıklamasını buraya girin

edit: parlaklığı da değiştirmek istiyorsanız (aşağıdaki tartışmaya bakın) aşağıdaki kodu kullanın:

# change brightness accordingly (reverse order)
palette.HSV@coords[1,3]<- 0.225
palette.HSV@coords[2,3]<-0.4
palette.HSV@coords[3,3]<-0.5625
palette.HSV@coords[4,3]<-0.9
palette.HSV@coords[5,3]<-0.7875
palette.HSV@coords[6,3]<-0.675
palette.HSV@coords[7,3]<-0.3
palette.HSV@coords[8,3]<-0.1125

1
Teşekkürler @joaoal! Her görüntü için gri tonlamalı gösterim eklemeyi düşünür müsünüz? Kodunuzdaki hızlı denemem, 8 bit gri tonlamaya dönüştüğünde neredeyse aynı görüntüleri (eğitimsiz gözlerim için) üretti.
Kazuhito

1
@Kazuhito bunu R'de nasıl yapacağımdan emin değilim. 5 sınıfla ilgili durumunuzda daha iyi olabilir. Renk rampasını geliştirmenin yanı sıra, her bir çokgenin ortasına haritanıza semboller eklemeyi düşünebilirsiniz; burada her benzersiz sembol farklı bir kategoriyi temsil eder veya çizgi desenleri gibi farklı dolgu stilleri kullanabilirsiniz. benim çözümüm böyle bir şey yapamayacağınız raster verileri içindi.
joaoal

2
+1 @joaoal Ek bilgileriniz için teşekkür ederiz. Sadece bir düşünce, ama palette.HSV@coords[x,3]HSV renk uzayındaki Değer (veya Parlaklık) 'a karşılık gelen değeri değiştirmeye ne dersiniz ? (Doygunluk üzerinde çalışıyorsunuz). Hızlı coords[ ,3]testim daha fazla kontrast oluşturdu, ancak ortamınızdan emin değilim.
Kazuhito

2
@Kazuhito Örneğim için denedim ve sadece parlaklığı değiştirerek daha iyi sonuçlar vermedim. Teoride, doygunluk doğrudan 0'ın beyaz ve 1'in bw baskıda siyah / veya tam renkli, örneğin renkli baskıda "kırmızı" olduğu grilik ile doğrudan bağlantılıdır. Parlaklık ayrıca baskıdaki griliği de etkiler ancak aralığınız bir şekilde sınırlıdır, çünkü tam renk arasındaki rengi değiştirir, örneğin "kırmızı" ve "siyah". Her ikisinin bir kombinasyonu bir seçenek olabilir ve ben bunu hesaba katmak için bazı kod ekledim. Sadece daha açık renklerdeki farkı artıran bir izlenim edindim, ancak daha koyu olanları kötüleştirdi.
joaoal

Teşekkürler, bilmek güzel. Ayrıca Değer'e çok fazla katlanmamamız gerektiğini de kabul ediyorum.
Kazuhito
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.