r - 线图 plot 在 R 中为单个数据系列的一行改变颜色,例如 1行,2颜色

  显示原文与译文双语对照的内容
0 0

我想创建一个简单的行 plot,如下所示:


things <- c(1, 3, 6, 4, 9)
plot(things, type="o", col="blue", axes=FALSE, ann=FALSE)
axis(1, at=1:5, lab=c("Mon","Tue","Wed","Thu","Fri"))
axis(2, las=1)
box()

( 图像)

但是随着单线变换颜色在某个数据点,在本例中,蓝星星期一wednesay和红色星期周五。 换句话说,从数据点 1到 3,线条是蓝色,从 3到,它是红色的。

如果只需将数据系列分成两个,然后分别将它们分开,图像就会加入,但是图像会加入它们,但我使用的实际数据却不是很复杂,所以需要一个很大的时间来完成这些任务。

一行,两种颜色,就是这样 !

谢谢!

时间: 原作者:

0 0

也许我在解释你在这里需要什么,但是我觉得你可以在 ggplot2 中轻松地完成它。

screenshot


library(ggplot2)

dd <- data.frame(days = c("Mon","Tue","Wed","Thu","Fri"),
 things = c(1, 3, 6, 4, 9))

# set the levels of the factor so that 'days' sorts properly
dd$days <- factor(dd$days, levels = c('Mon','Tue','Wed','Thu','Fri'))
# which days do we want to highlight?
days.highlight <- dd$days[4:5]

dd$highlight <- ifelse(dd$days %in% days.highlight,"red","black")

ggplot(dd, aes(x = days, y = things, colour = highlight, group = 1)) +
 geom_line() +
 geom_point() +
 scale_colour_identity(dd$highlight)

原作者:
...