Цвет маркера рассеяния R xy - PullRequest
       3

Цвет маркера рассеяния R xy

3 голосов
/ 24 августа 2010

Попытка построить график рассеяния xy со значением z, обозначенным цветом точки xy.

Данные:

1.1, 32.27, 19.4  
1.2, 21.34, 18  
1.4, 47.45, 19.4

R код:

 inp <- scan("beps.txt",list(x=0,y=0,z=0))  
 plot(inp$x, inp$y,pch=".")

Создает великолепный точечный график, но я бы хотел, чтобы точки были закрашены значением Z.

Ответы [ 3 ]

4 голосов
/ 24 августа 2010

Вот несколько воспроизводимых примеров, в которых используется ggplot2.Если я вас правильно понял, я должен делать то, что вы хотите.

library(ggplot2)

a = c(1.1, 32.27, 19.4)
b = c(1.2, 21.34, 18)
c = c(1.4, 47.45, 19.4)


df=as.data.frame(rbind(a,b,c))
names(df) = c("x","y","z")
df

p <- ggplot(df, aes(x,y,colour=z)) +geom_point()

В общем, я настоятельно рекомендую ggplot2 для подобных вещей.Это действительно стоит узнать немного больше о.Я все еще нахожусь в середине процесса и понимаю, сколько стоит потратить некоторое время на ggplot2.Если вы не знаете пакет и документацию, обязательно проверьте его.Документация проста для понимания и мощна!

4 голосов
/ 24 августа 2010

Итак, установите цветовой аргумент:

 plot(inp$x, inp$y, pch=".", col=inp$z)

Обратите внимание, что цвета имеют целочисленные значения.

0 голосов
/ 24 августа 2010

Аналогично ответу Дирка, используйте:

plot(inp$x, inp$y, pch=".", col= heat.colors(30)[inp$z] )

Можно, конечно, использовать другие цветовые схемы. видите? heat.colors

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