gallery
The goal of gallery is to replicate the MATLAB gallery of test
matrices in
R
.
Installation
You can install the released version of gallery from GitHub with:
devtools::install_github("tXiao95/gallery")
Example
This example can be found on the MATLAB website. We will plot the distribution of eigenvalues from a sample of 20,000 random circulant matrices of size 18 by 18 in the complex plane.
library(gallery)
library(ggplot2)
E <- matrix(0, nrow = 18, ncol = 20000)
for(i in 1:20000){
x <- -0.4 + 0.8*sample(0:1, 18, replace = TRUE)
A <- gallery::circul(x)
E[,i] <- eigen(A, only.values = TRUE)$values
}
df <- data.frame(Real = Re(c(E)), Imag = Im(c(E)))
ggplot(df, aes(Real, Imag)) +
geom_point(col = "blue", size = 0.5) +
scale_x_continuous(limits=c(-3,3)) +
scale_y_continuous(limits=c(-3,3)) +
coord_fixed(ratio=1) +
theme_bw()
#> Warning: Removed 10249 rows containing missing values or values outside the scale range
#> (`geom_point()`).