用于传递auto.key以在键中绘制符号的参数

时间:2013-08-12 09:50:05

标签: r lattice

我正在尝试使用右侧的键和符号以及行(也必须在键中给出)创建一个xyplot。我正在运行以下代码:

xyplot(value ~ variable | conditionCol1 + conditionCol2,
              data = rt, groups = groupingCol, type = "o", pch = 1:6,
              auto.key = list(space = "right", pch = 1:6),
              xlab = "Instance Size",
              ylab = "Execution Time")

返回的图表是正确的,并且对于不同的组有两行和不同的符号,但是键中的所有符号都是圆圈...

1 个答案:

答案 0 :(得分:4)

不将pch作为自己的参数传递,而是将其作为par.settings参数的一个组件传递。这应该确保图表和密钥使用相同的参数。

诀窍是确定要使用par.settings的哪个组件。在这种情况下,它将是superpose.symbol,因为panel.superpose是使用group参数时使用的面板函数,并且您想要更改绘制的符号。所以:

xyplot(value ~ variable | conditionCol1 + conditionCol2,
              data = rt, groups = groupingCol, type = "o",
              par.settings = list(superpose.symbol = list(pch = 1:6)),
              auto.key = list(space = "right"),
              xlab = "Instance Size",
              ylab = "Execution Time")

使用可重现的数据集:

library(ggplot2)
xyplot(cty ~ hwy | cyl + fl,
              data = mpg, groups = year, type = "o",
              par.settings = list(superpose.symbol = list(pch = 1:6)),
              auto.key = list(space = "right"),
              xlab = "Instance Size",
              ylab = "Execution Time")