[英]how to connect points based on column values in ggplot. (sample code included)
[英]connect points in ggplot based on specific column values
我有以下数据集叫做t
:
n <- 12
t <- data.frame(
V1 = runif(n, 0.12, 0.35),
V2 = runif(n, 0.25, 0.39),
group = gl(3, 4, labels = c("a1", "a2", "a3")),
x = seq_len(n),
color = rep(rep.int(c("R", "G"), 2), c(3, 4, 3, 2))
)
我从这些数据中创建了以下图表。
p <- ggplot(t, aes(x, colour = color)) +
geom_point(aes(y = V1, size = 10)) +
geom_point(aes(y = V2, size = 10))
我现在要做的是根据组列连接点(例如,组a1
点将与蓝线连接,组a2
点将以黄线连接,......)我想要根据行是不同的V1
和V2
(为虚线V1
和法线V2
)。
怎么做到这一点?
首先:命名一个数据集“t”不是一个好主意,因为它有一个令人困惑,因为还有一个函数t()。
最简单的方法是先熔化()数据集
Molten <- melt(t, id.vars = c("group", "x", "color"))
ggplot(Molten, aes(x = x, y = value, colour = group, linetype = variable)) + geom_line()
看看ggplot2网站上如何自定义颜色。
如果您想在不使用melt()
情况下绘制图形:
p <-ggplot(t) + geom_line(aes(x,V2,color=group)) + geom_line(aes(x,V1,color=group), linetype = "dashed")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.