# Rank deficient covariance:
#
import numpy as np
from matplotlib import pyplot as plt
from nustattools import plotting as nuplt
rng = np.random.default_rng()
x = np.linspace(0, 10, 5)
cov = np.eye(5)
u = x[:,np.newaxis] / 4
for i in range(3):
    u[i] *= -1
    cov = cov + u@u.T
A = np.eye(5) - np.ones((5,5)) * 1/5
cov = A @ cov @ A.T
y = rng.multivariate_normal(np.zeros(5), cov)
nuplt.pcplot(x, y, cov)
