2012-01-07 14 views
16

R'da bir dağılım grafiğinde tek bir veri noktası için rengi nasıl ayarlayabilirim?Tek bir veri noktasının rengini ayarlama

kullanıyorum plot

+0

Tüm veri noktalarını özellikle renkli veya yalnızca belirli bir veri noktasını çizmek mi istiyorsunuz? – jitendra

+0

Belirli bir veri noktasını dağılım grafiğinde renklendirmek istiyorum. – nit

cevap

10

Kullanım yüzden

plot(1:5, 1:5, col=1:5) 

bu örneğin beş farklı renklerde beş puan almak vectorized olduğunu col= argüman:

enter image description here

Sadece iki veya üç kullanmak için aynı mantığı kullanabilirsiniz veri noktalarınız arasında renkler. İndekslemeyi anlamak, R.

28

gibi dillerdeki anahtardır. @Dirk Eddelbuettel'in yanıtını genişletmek için, aramasındaki col için herhangi bir işlevi kullanabilirsiniz. Örneğin, x==3 nokta kırmızı bu renkler, siyah diğerlerini bırakarak:

x <- 1:5 
plot(x, x, col=ifelse(x==3, "red", "black")) 

example 1

aynı nokta karakteri pch, karakter genişleme cex vs. için de geçerli

plot(x, x, col=ifelse(x==3, "red", "black"), 
    pch=ifelse(x==3, 19, 1), cex=ifelse(x==3, 2, 1)) 

example 2

+0

Evet, herhangi bir _expression_ skaler veya geri dönüştürülebilir bir vektör verir. Yani col = c (rep ("siyah", 3), rep ("mavi", 2)), iki siyah nokta ve ardından iki maviye sahip olur. –

+0

Oldukça basit ama ifelse'i kullanmayı hiç düşünmedim. +1 –

17

Kodla ne yapmak istediğinizi yapmak yeterince kolay ve Bunun için güzel yollar verdik. Bununla birlikte, rengini değiştirmek istediğiniz noktaları tıklamayı tercih ederseniz, bunu yeni bir renkte bu noktaların üzerine çoğaltmak için 'noktaları' komutuyla birlikte 'tanımla' kullanarak yapabilirsiniz.

# Make some data 
n <- 15 
x <- rnorm(n) 
y <- rnorm(n) 

# Plot the data 
plot(x,y) 

# This lets you click on the points you want to change 
# the color of. Right click and select "stop" when 
# you have clicked all the points you want 
pnt <- identify(x, y, plot = F) 

# This colors those points red 
points(x[pnt], y[pnt], col = "red") 

# identify beeps when you click. 
# Adding the following line before the 'identify' line will disable that. 
# options(locatorBell = FALSE) 
+0

da paylaştığınız için teşekkürler. Paylaştığınız için teşekkürler, böyle bir tanımlamayı da düşünmedim. +1 –

+1

tanımlaması da R Studio'da kullanımı çok kolaydır. Ayrıca etiketleme noktaları için iyidir. Fakat "stop" için sağ tıklamak yerine, R Studio çiziminde önizleme etiketli bir düğme var. –

+0

@Captain RStudio benim sürümünde aslında "Son" diyor – Dason

İlgili konular