ggplot2:如何通过多个变量为图形着色

移相器

我相当确定我已经在某个地方看到了解决方案,但是由于找不到,这是我的问题。

我有一些由多个变量标识的时间序列数据,我希望能够使用中的多个变量来绘制图形并区分颜色ggplot2

样本数据:

date <- c("2016-04-01 UTC", "2016-05-01 UTC", "2016-06-01 UTC", "2016-04-01 UTC",
          "2016-05-01 UTC", "2016-06-01 UTC", "2016-04-01 UTC", "2016-05-01 UTC",
          "2016-06-01 UTC", "2016-04-01 UTC")
temp <- c(80.24018,  85.88911, 104.23125,  85.13571,  91.21129, 104.88333,  97.81116,
          107.40484, 121.03958,  87.91830)
id <- c("A","A","A","A","A","B","B","B","B","B")
location <- c("N","S","S","N","N","S","N","S","N","S")

df <- data.frame(date,temp,id,location)

我尝试作图

library(ggplot2)

ggplot(df) + 
  geom_line(aes(x=date,y=temp,colour=factor(location), group=interaction(location,id)))

使用此代码只能按位置着色。我希望线条按位置和ID进行着色。

利斯特尔

两种选择:

library(ggplot2)

df <- data.frame(date = c("2016-04-01 UTC", "2016-05-01 UTC", "2016-06-01 UTC", "2016-04-01 UTC", "2016-05-01 UTC", "2016-06-01 UTC", "2016-04-01 UTC", "2016-05-01 UTC", "2016-06-01 UTC", "2016-04-01 UTC"),
                 temp = c(80.24018,  85.88911, 104.23125,  85.13571,  91.21129, 104.88333,  97.81116, 107.40484, 121.03958,  87.91830),
                 id = c("A","A","A","A","A","B","B","B","B","B"),
                 location = c("N","S","S","N","N","S","N","S","N","S"))

df$date <- as.Date(df$date)    # parse dates to get a nicer x-axis

映射id到颜色和location线型:

ggplot(df, aes(date, temp, color = id, linetype = location)) + geom_path()

...或将所有互动绘制为不同的颜色:

ggplot(df, aes(date, temp, color = id:location)) + geom_path()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在R中使用ggplot2为渐变上的多个geom_lines着色?

如何使用ggplot2为图形编号

如何在ggplot2中为两条线之间的区域着色/着色?

通过 ggplot2 box 或 barplot 中的派生连续变量着色

如何通过多个图形获取标签 onclick 事件?

如何在ggplot2中按组为facet_grid着色?

如何在geom_bar ggplot2中为许多列着色相同的颜色

ggplot2:如何根据bin范围为直方图中的特定bin着色

通过对变量进行分组为 ggplot 中的直方图着色方面

GGPlot2 - 为绘图中的特定条形着色

如何制作具有多个几何形状的自定义ggplot2几何图形

是否可以根据二进制变量为ggplot2中的线图下的特定区域着色?

在ggplot2中订购多个变量

ggplot2图形标题基于for循环变量的迭代

向ggplot2图形添加多个阴影/矩形

使用多个方面播放 ggplot2 的图形

如何添加行并通过多个变量外推数据?

如何通过多个变量重新排序条形图

ggplot2:为每个ID创建不同的图形面板

如何在R中使用ggplot2根据大小为节点/ geom_point渐变着色?

使用ggplot2的图形

ggplot2图例通过几何图形而不是美学图形

如何使用ggplot2填充图形的区域

ggplot2:如何以特定角度旋转图形?

如何使用ggplot2清理数据并创建图形?

如何使图形的轴跳过固定值(ggplot2)

如何更正无法生成ggplot2图形的错误?

如何返回预期的图形(ggplot2,r 中的椭圆)?

如何在多个多方面ggplot2图形中实现相同的方面大小和比例?