#r #ggplot2
Вопрос:
Мой фрейм данных содержит 3 столбца (температура плюс две оценки одной и той же переменной с использованием разных методов, например, длины). Я хочу построить один в виде кривой, а другой в виде разброса, что я могу сделать. Но линия находится перед разбросом и выглядит уродливо. Я попытался переместить строку в первую очередь в ggplot, но это не помогает.
ИЗМЕНИТЬ: пример моих данных с использованием случайных чисел. df = data.frame(temp = c(0.1,0.5,0.6,0.9,1.6),var1 = c(1,2,3,4,5), var2 = c(5,4,3,2,1))
ПРАВКА: более подробно. Var1 и var2-это разные оценки одной и той же переменной, рассчитанные с использованием разных методов, например, высота. И я хочу визуализировать их в зависимости от температуры, используя var1 в виде линии, а var2 в виде точек. Но мне нужно, чтобы линия находилась за точками, которые, по моему мнению, выглядят лучше.
Ниже приведено то, что я пробовал, разница заключается в порядке разброса/строки, переданном ggplot2. Но линия не заходит за точки.
p = ggscatter(df,x="temp",y="var2")
geom_line(data = df, aes(x = temp, y = var1), color = "blue", size = 2.5)
xlab('temp')
ylab('length')
p
Новая попытка ниже:
p = ggline(df,x="temp",y="var1", size = 2.5)
geom_point(df, aes(x = temp, y = var2), color = "blue")
xlab('temp')
ylab('length')
p
Комментарии:
1. Это невозможно воспроизвести, и мне непонятно, к какой линии или сюжету вы имеете в виду. Можете ли вы отредактировать свой вопрос, чтобы включить соответствующую информацию?
2. Пожалуйста, поделитесь данными, с которыми вы работаете (т. Е.
df
)dput(df)
, чтобы мы могли воспроизвести ваши проблемы.3. Возможно, вам было бы полезно создать свой сюжет с нуля с
ggplot
помощью первого вызова, вместо использованияggscatter
илиggline
. — Также другие авторы правы, с этим трудно работать, мы не можем читать ваши мысли. но, прочитав до конца, вы, вероятно, захотите этого:ggplot(df, aes(x = temp)) geom_line(aes(y = var1)) geom_point(aes(y = var2))
4. Спасибо, я просто отредактировал его, чтобы предоставить фиктивные данные