цикл for генерирует несколько графиков

У меня есть вопрос о цикле for в сочетании с функцией plot. Я хочу использовать функцию цикла for (см. ниже) для построения нескольких точек на одном графике. Но мой цикл генерирует для каждой точки свой график. Итак, с i 35 я генерирую 35 сюжетов. Мой вопрос: есть ли способ построить все точки на одном графике?

pdf("test plot.pdf")
for (i in 1:nrow(MYC)){
plot(MYC[i,1], MYC[i,2]
}
dev.off()

Спасибо вам всем!


person Lisann    schedule 12.08.2011    source источник
comment
Реальные данные немного другие! Здесь я также мог бы использовать plot(MYC[,1], MYC[,1]), чтобы получить все точки на одном графике. Петля нужна!   -  person Lisann    schedule 12.08.2011
comment
Не могли бы вы расширить вопрос, чтобы дать более подробную информацию о типе сюжета, который вы имеете в виду? Можете ли вы предоставить некоторые образцы данных? Рассматривали ли вы возможность использования граней в одном сюжете?   -  person Andrie    schedule 12.08.2011
comment
Вы хотите использовать points вместо plot. Вызовите plot, затем выполните for цикл, используя точки. В некоторых ситуациях даже допускается использование аргумента add для plot, но я подозреваю, что это не ваш случай.   -  person Roman Luštrik    schedule 12.08.2011
comment
@Lisann В общем, я думаю, что лучше всего агрегировать все ваши данные перед отправкой на график. Другими словами, используйте цикл для создания data.frame или массива с вашими данными, затем одну команду построения графика, скажем, ggplot   -  person Andrie    schedule 12.08.2011


Ответы (1)


Как упоминалось в комментариях, вы, по сути, пытаетесь сделать несколько графиков с циклом. R не понимает, что на самом деле хочет отображать только точки. От этого есть лекарство, и оно продается во флаконах с points(). Перед вызовом цикла постройте свой график, используя аргумент type. Это создаст пустой сюжет, что-то вроде:

plot(your.data, type = "n")

Затем вы можете использовать свой цикл (с points), чтобы добавить точки к этому существующему графику.

person Roman Luštrik    schedule 12.08.2011