-4
У меня есть таблица, которые выглядят, как показано ниже,Нет слоев в участке (R)
chr1 500 15 0.502 na
chr1 1000 21 0.641 0.019704955
chr1 1500 21 0.621 0.016777844
chr1 2000 22 0.534 na
chr1 2500 35 0.698 0.028712731
chr2 4500 2 0.371 na
chr2 5000 3 0.342 na
chr4 5500 1 0.068 na
chr4 6000 0 0.000 na
chr4 6500 0 0.000 na
chr5 7000 2 0.079 na
chr5 7500 12 0.440 na
Из этой таблицы, я хотел бы создать несколько участков - по одному для каждого chr- где будет XAxis и Y оси столбец 2 и 5.
на основе ответа на другой вопрос, я попытался это,
require(ggplot2)
require(plyr)
Y <- read.table("integ.pi")
names(Y) <- c("Chr","Window","SNPs","covfra","pi")
chrs <- levels(Y[,"Chr"])
c <- lapply(chrs, function(chr) {
ggplot(Y[Y[, "Chr"]==chr,], aes(x=as.factor(Window), y=pi))
})
lapply(c)
Но я Обнаружили ошибку
"Error: No layers in plot".
Как мне это сделать? Есть идеи?
Спасибо.
Приветствия,
Ну, как следует сообщение: добавить слой на свой сюжет, как 'geom_point' или что-то. См. Http://docs.ggplot2.org/current/ggplot.html – lukeA
, вам нужно определить _what_ для построения с помощью 'ggplot'. Если вам нужны точки (диаграмма рассеяния), 'geom_point', если вы хотите строки,' geom_line'. Попробуйте прочитать учебник ggplot, есть много, если вы google. – PavoDive
В качестве побочного комментария: 'c()' является функцией в R. Поэтому неверно использовать переменные 'c'. – Heroka