在GNUPlot中显示均值和协方差

在GNUPlot中显示均值和协方差,gnuplot,octave,Gnuplot,Octave,我想在gnuplot中显示一组观测值及其平均值和协方差。有人知道我会怎么做吗?有没有其他的计划可以很好地做到这一点?像Octave这样的程序能做到这一点吗?我看到了获取统计数据的方法,但我还没有找到任何关于显示这些统计数据的方法 为了澄清,我想显示数据点(2d或3d),显示它们在数据集中绘制的平均值,并显示一个表示协方差的椭圆。是的,您可以使用倍频程进行此操作 ## create 2x1000 matrix of random data with normal distribution data

我想在gnuplot中显示一组观测值及其平均值和协方差。有人知道我会怎么做吗?有没有其他的计划可以很好地做到这一点?像Octave这样的程序能做到这一点吗?我看到了获取统计数据的方法,但我还没有找到任何关于显示这些统计数据的方法


为了澄清,我想显示数据点(2d或3d),显示它们在数据集中绘制的平均值,并显示一个表示协方差的椭圆。

是的,您可以使用倍频程进行此操作

## create 2x1000 matrix of random data with normal distribution
data = randn (1000, 2);

## plot data (the o is for dots)
plot (data(:,1), data(:,2), "o");

## get mean from each
mu   = mean (data);

## calculate covariance matrix
R    = cov (data);

## calculate the ellipse points
A     = chol (R, "lower");
theta = linspace (0, 2*pi, 1000);
x     = mu' + 2.5 .* A * [cos(theta); sin(theta)];

## plot the ellipse
hold on;
plot(x(1,:), x(2,:), "r", "LineWidth", 2);

我在octave 4.0.2中遇到错误,并将Carandraugh答案中的“x=”行更改为:

x     = mu' + 2.5 .* A * [cos(theta); sin(theta)];
theta=linspace(0,2*pi,1000)