Без воспроизводимого примера набора данных трудно быть уверенным в том, что вы ищете.
Однако, используя эти поддельные наборы данных:
df1 <- data.frame(Country = c("A","A","A","B","B"),
Year = 2010:2014,
Value = sample(1:100,5))
df2 <- data.frame(Country = c("A","A","A","B","B"),
Year = 2010:2014,
Value = sample(1:100,5))
1) Построение без объединения наборов данных (не самое подходящее)
Вы не делаете Вам необходимо полностью собрать ваши кадры данных для их построения, однако это усложнит ситуацию (особенно если вы хотите настроить несколько параметров). Здесь вы можете сделать:
library(ggplot2)
ggplot()+
geom_point(data = df1, aes(x = Year, y = Value, color = "blue"), shape = 21)+
geom_point(data = df2, aes(x = Year, y = Value, color = "red"), shape = 21, show.legend = TRUE)+
scale_color_manual(values = c("blue","red"), labels = c("df1","df2"), name = "")
2) Сборка обоих кадров данных (лучший способ сделать это)
Однако будет гораздо проще, если вы соберете оба этих кадра данных (ggplot2
предназначен для работы с кадрами данных в более длинном формате).
Итак, здесь вы можете сделать:
df1$Dataset = "DF1"
df2$Dataset = "DF2"
DF <- rbind(df1,df2)
Country Year Value Dataset
1 A 2010 66 DF1
2 A 2011 64 DF1
3 A 2012 40 DF1
4 B 2013 58 DF1
5 B 2014 20 DF1
6 A 2010 78 DF2
7 A 2011 25 DF2
8 A 2012 71 DF2
9 B 2013 40 DF2
10 B 2014 61 DF2
Теперь, вы можете просто нарисовать это, как это, что гораздо более кратко:
library(ggplot2)
ggplot(DF, aes(x = Year, y = Value, color = Dataset))+
geom_point(shape = 21)
3) Подмножество фрейм данных
Чтобы отобразить только подмножество ваших фреймов данных, начиная с собранного фрейма данных DF
, вы можете просто сделать:
library(ggplot2)
ggplot(subset(DF, Country =="A"), aes(x = Year, y = Value, color = Dataset))+
geom_point(shape = 21)
Это отвечает на ваш вопрос?