Как сделать сюжет XY - PullRequest
       5

Как сделать сюжет XY

0 голосов
/ 21 февраля 2019

Я не уверен, как построить график XY по R.
У меня есть наборы данных ABC.

 A dataset
 ID    Result  
 1.1      2  
 1.2      4  
 1.3      2.5  
 1.4      9  
 B dataset   
 ID    Result    
 1.1      1   
 1.2      7   
 1.3      6   
 1.4      9     
 C dataset  
 ID    Result  
 1.1      0.5  
 1.2      8   
 1.3      9   
 1.4      9   

Я хочу построить график X = результат A, y = результат B,другой график x = результат A и Y = результат C ....

, тогда A представлен красными точками, B - черным, а C - синим, например.Таким образом, точка 1.1 должна быть x = 2 и y = 1 красным (A) и блоком (B).пятно 4,7, это означает, что это ID 1.2 в красном и блок .... Пятно 9,9 это означает, что это ID 1.4 в красном и блок ..... ..... 1007 *

Я пробую qqplotsно я не знаю, как правильно сделать X и Y.

Спасибо

1 Ответ

0 голосов
/ 21 февраля 2019

ggplot2 - отличная библиотека для создания графиков, и в Интернете есть много справочных руководств.Ниже приведен ответ на ваш вопрос с использованием подхода ggplot.Кадры данных A, B, C объединены в один кадр, и используется geom_point () для графика xy.Функция aes () устанавливает координаты x и y (здесь вы, кажется, пытаетесь представить «результат» как x и y, если я понял вопрос?).Точки масштабируются по цвету, который определяется во фрейме данных как атрибуты A, B, C.Важно отметить, что эта переменная должна быть фактором.Цвета определяются ручной цветовой шкалой.

library(ggplot2)
dataA <- data.frame(ID=c(1.1,1.2,1.3),result=c(2,4,2.5),index=c(1,2,3),color="A")
dataB <- data.frame(ID=c(1.1,1.2,1.3),result=c(1,7,6),index=c(1,2,3),color="B")
dataC <- data.frame(ID=c(1.1,1.2,1.3),result=c(0.5,8,9),index=c(1,2,3),color="C")

data <- rbind(dataA,dataB,dataC)
data$color <- as.factor(data$color)
ggplot(data) +
  geom_point(aes(x=result,y=result,color=color,size=10)) +
  scale_color_manual(values=c("red", "black", "blue")) +
  theme_bw()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...