У меня есть следующий код, чтобы сделать график моих данных:цвета точек по значениям х-оси в ggplot
library(ggplot2)
library(reshape)
sdata <- read.csv("http://dl.dropbox.com/u/58164604/sdata.csv", stringsAsFactors = FALSE)
pdata<-melt(sdata, id.vars="Var")
p<-ggplot(pdata, aes(Var,value,col=variable))
p+geom_point(aes(shape = variable),alpha=0.7)
Это создает граф с «Var» является осью х и «значения» быть ось y. Что бы я хотел сделать, это изменить цвет точек. Вместо того, чтобы быть под именем переменной, я бы хотел, чтобы они были по значению «Var». Поэтому мне бы хотелось, чтобы все точки, имеющие значение Var от 1 до 10, были одним цветом, 11-20 - другим и т. Д. Для 21-30, 31-35 и 36-41. Мне также хотелось бы, чтобы лента/область затенены за этими точками, которая простирается от самого высокого до самого низкого значения для каждого значения Вар, но эта лента также должна иметь тот же цвет, что и точки, только с более низкой прозрачностью уровень.
Для бонусного вопроса у меня также возникает проблема с получением переменной «mean» из моего примера, чтобы отображаться как geom_line, а не geom_point. Я играл с этим:
p+geom_point()+geom_line(data=pdata[which(pdata$variable=="Mean")])
но я не могу заставить его работать. Если кто-то может помочь с любым из этого, это будет здорово. Благодарю.
Спасибо за вашу помощь. Извините, что я не стал более ясным. Данные, которые я использую, - это 5 разных категорий, поэтому я хотел бы, чтобы все точки от 1 до 10 отображались в одном цвете и от 11 до 20 других цветов и так далее. Чтобы было легче видеть, я думал о том, чтобы использовать максимальное значение для каждого Var (от 1 до 41), которое является переменной 5 и самой низкой переменной 10 и затеняет их в том же цвете, что и точки. Таким образом, для значений от 1 до 10 будет затененный фон одного цвета, а затем от 11 до 20 будет другой цвет и так далее. – Chris