Я пытаюсь построить несколько фреймов данных с плавной линией, используя ggplot() или stat_smooth() с png в качестве фона.r plot multiple ggplot, stat_smooth on png
У меня есть три dataframes
data1 <- data.frame(Max.x, Max.y)
data2 <- data.frame(Med.x, Med.y)
data3 <- data.frame(Min.x, Min.y)
и изображение (PNG-файл)
mypng <- readPNG("picture.png")
я обнаружил, что с stat_smooth (диапазон = 0,4), что создаст плавную линию, которая проходит через все точек в кадре данных.
Теперь я пытаюсь построить три плавные линии на mypng
Я пытался пару вещей.
ggplot(data1, aes(x=Max.x, y=Max.y))+scale_x_continuous(limits = c(126,129))+scale_y_continuous(limits = c(37.5, 38.5))+ annotation_raster(mypng, xmin=126, xmax=129, ymin=37.5, ymax=38.5)+stat_smooth(span=0.4)
То же самое касается данных2 и данных3. Это отображает каждую строку на png, но я не могу найти способ получить все три строки в одном png.
Также обратите внимание, что на графике должно быть установлено x, y max и min b/c мои данные попадают между этими координатами.
Другая вещь, которую я попробовал:
ggplot()+annotation_raster(mypng, xmin=126, xmax=129, ymin=37.5, ymax=38.5)+stat_smooth(data=data1, aes(x=Max.x, y=Max.y), span=0.4)+stat_smooth(data=data2, aes(x=Med.x, y=Med.y), span=0.4)+stat_smooth(data=data3, aes(x=Min.x, y=Min.y), span=0.4)+scale_x_continuous(limits=c(126,129))+scale_y_continuous(limits=c(37.5,38.5))
Строит все три smoothlines. Однако изображение не появляется.
Я сейчас застреваю ... Я могу получить три разных сюжета на mypng. И я могу получить все три сюжета, но не на mypng. Как я могу получить все три строки на mypng?
У вас есть опечатка в коде: 'annotation_rater' должен быть' annotation_raster'. Кроме того, если вы складываете три фрейма данных в один кадр данных, вам понадобится только один вызов 'geom_smooth'. – eipi10
Извините за тип. Я работаю на компьютере без Интернета, поэтому мне пришлось вручную переписать код здесь. И к вашей точке .. Я не могу комбинировать данные, потому что вижу три разные строки. Если я соберу их вместе, он только создаст их. –
Да, но вы добавляете еще один столбец группировки, который отмечает, к какому кадру данных относятся каждая строка, и вы сопоставляете этот столбец с эстетикой «group» или «colour». @ Ответ Миста показывает, что я имею в виду. – eipi10