График цвета R для биномиальной переменной - PullRequest
0 голосов
/ 03 мая 2020

Я создал график с биномиальной переменной, который имеет значения 0 и 1. В полученном графике я хочу четко увидеть, какие из кругов на графике принадлежат категории 0, а какие - 1. I Я могу придать кругу разные цвета, но не так, как я уже упоминал. Кто-нибудь знает, как это сделать?

1 Ответ

1 голос
/ 03 мая 2020

В базе R функция plot принимает аргумент col, который определяет цвет точек. Рассмотрим следующее:

# generate some random data to plot
dataPoints = runif(50)
# plot all points as green points
plot(dataPoints, col = "green", pch = 20)

Plot with green points

Теперь давайте создадим случайный биномиальный «тип» (0 или 1) для каждой точки:

# generate a random "type" for each point; either 0 or 1
dataType = sample(c(0,1), 50, replace = T)

Используя биномиальный тип, мы можем создать вектор цветов, а не просто указать один цвет:

# create a list of colors for each point, based on "type" of point (0 or 1).  
# 0 = "red" and 1 = "blue".
colorVector = c("red", "blue")[dataType+1]

Проверьте содержимое ...

> dataType
 [1] 1 1 1 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 1 0 0 0 1 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 0
> colorVector
 [1] "blue" "blue" "blue" "red"  "red"  "blue" "red"  "red"  "blue" "red"  "red"  "blue" "red"  "red"  "red"  "red" 
[17] "red"  "red"  "red"  "blue" "blue" "red"  "red"  "red"  "blue" "blue" "red"  "blue" "blue" "blue" "red"  "red" 
[33] "red"  "blue" "red"  "red"  "red"  "red"  "red"  "red"  "blue" "blue" "blue" "blue" "red"  "red"  "blue" "blue"
[49] "blue" "red" 

Теперь, скажите plot, чтобы использовать цветовой вектор для цветов - первая точка будет первым цветом в цветном векторе, вторая точка будет вторым цветом в цветном векторе, et c.

plot(dataPoints, col = colorVector, pch = 20)

Plot with point colors determined by a vector of color names.

Наконец, если список цветов короче, чем список точек, цветовой вектор используется повторно ...

plot(1:30, col = c("red", "blue", "green"), pch = 20)

Plot with recycled c(

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...