复数矩阵的R图

SeB*_*SeB 1 plot r matrix complex-numbers

我有一个复杂值的矩阵.

如果我发出命令:

plot(myMatrix)
Run Code Online (Sandbox Code Playgroud)

然后它在图形设备上显示一种散点图,X轴标记为Re(myMatrix),Y轴标记为Im(myMatrix).这显示了我正在寻找的信息,因为我可以看到不同的聚类,我只能看到一列.

我的问题是:

  1. 我假设每个矩阵行有一个点.这样对吗 ?
  2. 如何为每个行向量计算Re(myMatrix)?

它不是Re(myMatrix [1,row]),但似乎是行向量的所有值的混合.我希望能够获得这些值,以便知道如何用R计算它们.

Rol*_*and 7

不,每个矩阵元素都有一个点.

set.seed(42)
mat <- matrix(complex(real = rnorm(16), imaginary = rlnorm(16)), 4) 
plot(mat)

points(Re(mat[1,1]), Im(mat[1,1]), col = "red", pch = ".", cex = 5)
Run Code Online (Sandbox Code Playgroud)

寻找红点: 结果情节

如果你绘制了一个向量而不是一个矩阵,你会得到相同的图,即plot(c(mat)).

这是因为plot.default调用xy.coords和该函数包含以下代码:

else if (is.complex(x)) {
            y <- Im(x)
            x <- Re(x)
            xlab <- paste0("Re(", ylab, ")")
            ylab <- paste0("Im(", ylab, ")")
        }
        else if (is.matrix(x) || is.data.frame(x)) { 
Run Code Online (Sandbox Code Playgroud)

这意味着输入复杂的事实优先于它是一个矩阵.