Nano Hash - криптовалюты, майнинг, программирование

несколько y по x в ggplot2

Я новичок в использовании ggplot 2. Когда я использовал plot(), я просто использовал points() или lines(), чтобы добавить еще один y к тому же x, как решить это в ggplot?

ggplot(df, aes(x=xVal, y=y1Val ,colour="darkred")) + geom_line(size=2)

прежде чем я получил свое решение с:

plot(df$xVal, df$y1Val,color="darkred")
pints(df$xVal, df$y2Val,color="blue")

У меня есть 3 переменных, и я хочу построить 2 из них над последней. Я думаю, что обычный пример plot () указывает на то, что я хочу: например.

x y1 y2
1 2 3
5 4 6
3 3 5
2 2 4

Теперь нарисуйте две линии с y1 и y2 над x.

Как разобраться с цветом, чтобы я мог поставить легенду с правильными названиями? Спасибо!

02.07.2013

  • Не могли бы вы привести небольшой минимальный рабочий пример? В основном создайте фрейм данных с именем df с xVal, y1Val и y2Val. Мне также непросто определить ваш вопрос. У вас есть один сюжет о сюжете, а другой - о легендах. Какой у вас конкретный вопрос? 02.07.2013
  • +1 pints - классная опечатка 02.07.2013

Ответы:


1

Хмммм, я не совсем понимаю, что вы хотите, поэтому я предложу предложение, и вы можете порекомендовать исправления, чтобы они соответствовали желаемому результату.

library(reshape2)
library(ggplot2)
set.seed(16)
df <- data.frame(x = sample(1:10), y1 = sample(1:10), y2 = sample(1:10))
df[5,2] <- NA
df[7,3] <- NA
df <- df[complete.cases(df), ]
df2 <- melt(df, id = "x")
df2
# > df2
#   x variable value
# 1 1       y1     2
# 2 5       y1     4
# 3 3       y1     3
# 4 2       y1     2
# 5 1       y2     3
# 6 5       y2     6
# 7 3       y2     5
# 8 2       y2     4
ggplot(df2, aes(x = x, y = value, color = variable)) + 
  geom_line(size = 1) + geom_point(size = 3) + 
  scale_color_brewer(palette = "Set1")

линии и графики

02.07.2013
  • Спасибо, что вы получаете y1 и y2 из одного и того же столбца с именем yval, но у меня есть 2 столбца в df для y - каждый для одной строки. 02.07.2013
  • Это довольно забавно, если я возьму ваш пример, который я получаю: 'x, variable, value' - погода, которую я беру, я получаю: 'Var1, Var2, value' из melt and plot не работает ... 02.07.2013
  • Спасибо, Райан, я буду использовать старый "plot ()". Ggplot намного хуже. У меня есть объекты xts с примерно 500000 значений каждый - с plot () и coredata () автоматически используются только пары - прямо сейчас мне сначала нужно использовать 'na.omit', а потом иметь много misvalues ​​.. не знаю откуда они берутся. Я хотел использовать ggplot из-за сетки, но это того не стоит. 02.07.2013
  • Спасибо - работает, но: мне нужна обработка данных ... - df2 ‹- df1 [complete.cases (df1),] - df3‹ - coredata (df2) - df4 ‹-as.data.frame (df3) - df5‹ - melt (df4, id = x) - в дополнение к plot с plot (). 02.07.2013
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..