我可以使用 Lattice auto.key 或 key 来制作带有点的图例和其他数据的线吗?

Posted

技术标签:

【中文标题】我可以使用 Lattice auto.key 或 key 来制作带有点的图例和其他数据的线吗?【英文标题】:Can I use Lattice auto.key or key to make a legend with points for some data and lines for others? 【发布时间】:2021-11-21 17:39:16 【问题描述】:

我经常制作将观察数据表示为点和模型预测数据表示为线的图形,使用distribute.type 来分配图形类型。有没有办法制作只显示点数据的点和线数据的线的图例? auto.key 默认是点,如果我用“list(lines=TRUE)”添加线,则图例会显示每个数据标签的点和线:

x <- seq(0, 8*pi, by=pi/6)

Y1pred <- sin(x)
Y1obs <- Y1pred + rnorm(length(x), mean=0, sd=0.2)
Y2pred <- cos(x)
Y2obs <- Y2pred + rnorm(length(x), mean=0, sd=0.4)
 
xyplot(Y1obs + Y2obs + Y1pred + Y2pred ~ x, 
        type=c('p','p','l','l'), 
        distribute.type=TRUE,
        auto.key=list(lines=TRUE, columns=2)
        )

有一个相当复杂的例子在 p 上使用 'key'。 Deepayans关于格子的书158,我想知道是否有简单的选择?

【问题讨论】:

【参考方案1】:

是的,在S之后,keylines组件支持不同的type-s(但不支持points)。使用auto.key,你可以这样做

xyplot(Y1obs + Y2obs + Y1pred + Y2pred ~ x, 
       type=c('p','p','l','l'), 
       distribute.type=TRUE,
       auto.key = list(points = FALSE, lines = TRUE,
                       columns = 2,
                       type = c('p','p','l','l')))

理想情况下,您只想将type 放在lines 组件中,如果您使用key,您应该这样做。对于auto.key,反正只能有一行,这样应该没问题。

【讨论】:

以上是关于我可以使用 Lattice auto.key 或 key 来制作带有点的图例和其他数据的线吗?的主要内容,如果未能解决你的问题,请参考以下文章

lattice levelplot 或 ggplot2 map R 的自定义图例

R:如何改变 lattice (levelplot) 颜色主题?

lattice ISPLSI 2032E-110LJN44(CPLD)芯片快停产了,哪个芯片可以在功能上代替它,不定牌子

序列标注(BiLSTM-CRF/Lattice LSTM)

LATTICE 公司的isplsi 1032e编程可以用啥软件?用altera 2吗?是FPGA语言?用啥下载啊?

lattice与altera的fpga有啥区别?譬如开发环境,配置等