【发布时间】:2020-01-09 18:21:46
【问题描述】:
在下面给出的示例中,可以使用R 的levelplot 函数轻松完成,我想问一个解释问题:例如,如果我有几个带有drat 的值x 轴和 y 轴上的hp,R 如何根据drat 和hp 的横截面决定将哪种颜色放入单元格中?是通过这些不同的价值观吗?还是如果它们中的大多数都在定义的范围内?
无论如何...我对此进行了研究,但没有发现可以回答我的问题。如果有人可以提供帮助,请提前感谢您。
【问题讨论】:
在下面给出的示例中,可以使用R 的levelplot 函数轻松完成,我想问一个解释问题:例如,如果我有几个带有drat 的值x 轴和 y 轴上的hp,R 如何根据drat 和hp 的横截面决定将哪种颜色放入单元格中?是通过这些不同的价值观吗?还是如果它们中的大多数都在定义的范围内?
无论如何...我对此进行了研究,但没有发现可以回答我的问题。如果有人可以提供帮助,请提前感谢您。
【问题讨论】:
看看'panel'参数,它继承自'xyplot',参数'panel'继承自'scales'。考虑指定这些。或者考虑在 levelplot() 中指定 'at' 参数。
level.colors(panel='xyplot(at=)
其中 at = 范围内的断点(-1 到 +1)
https://stat.ethz.ch/R-manual/R-devel/library/lattice/html/levelplot.html
https://stat.ethz.ch/pipermail/r-help/2010-January/223707.html
【讨论】:
范围为 1 到 -1 的数值以及 1 处的所有对角线(左下角到右上角)值表明相关矩阵正在用作数据。 R 的普通用户会将这些列名识别为来自示例数据集mtcars 列的子集。因此,任何变量与自身的相关性为 1。我将在下面演示。
cor(mtcars[c('cyl','disp','hp','drat','wt','qsec','vs')])
cyl disp hp drat wt qsec vs
cyl 1.0000000 0.9020329 0.8324475 -0.69993811 0.7824958 -0.59124207 -0.8108118
disp 0.9020329 1.0000000 0.7909486 -0.71021393 0.8879799 -0.43369788 -0.7104159
hp 0.8324475 0.7909486 1.0000000 -0.44875912 0.6587479 -0.70822339 -0.7230967
drat -0.6999381 -0.7102139 -0.4487591 1.00000000 -0.7124406 0.09120476 0.4402785
wt 0.7824958 0.8879799 0.6587479 -0.71244065 1.0000000 -0.17471588 -0.5549157
qsec -0.5912421 -0.4336979 -0.7082234 0.09120476 -0.1747159 1.00000000 0.7445354
vs -0.8108118 -0.7104159 -0.7230967 0.44027846 -0.5549157 0.74453544 1.0000000
levelplot(cor(mtcars[c('cyl','disp','hp','drat','wt','qsec','vs')]))
所以颜色代表来自该相关矩阵的单个值。每个条目都是以下操作的结果:
cor(mtcars$disp, mtcars$cyl)
(我不知道你的色阶为什么这么短。)
【讨论】: