Pregunta

Quiero trazar algunos gráficos de intervalos de confianza en MATLAB, pero no tengo idea de cómo hacerlo. Tengo los datos en un archivo .xls.

¿Puede alguien darme una pista, o alguien conoce los comandos para trazar CI?

¿Fue útil?

Solución

No estoy seguro de lo que querías decir con el gráfico de intervalos de confianza, pero este es un ejemplo de cómo trazar un IC del 95% de dos caras de una distribución normal:

alpha = 0.05;          % significance level
mu = 10;               % mean
sigma = 2;             % std
cutoff1 = norminv(alpha, mu, sigma);
cutoff2 = norminv(1-alpha, mu, sigma);
x = [linspace(mu-4*sigma,cutoff1), ...
    linspace(cutoff1,cutoff2), ...
    linspace(cutoff2,mu+4*sigma)];
y = normpdf(x, mu, sigma);
plot(x,y)

xlo = [x(x<=cutoff1) cutoff1];
ylo = [y(x<=cutoff1) 0];
patch(xlo, ylo, 'b')

xhi = [cutoff2 x(x>=cutoff2)];
yhi = [0 y(x>=cutoff2)];
patch(xhi, yhi, 'b')

plot

Otros consejos

Después de leer numerosos hilos, aquí está mi intento.

 introduce la descripción de la imagen aquí

% Get some random data
x       = linspace(0.3, pi-0.3, 10);
Data    = sin(x) + randn(1, 10)/10;
Data_sd = 0.1+randn(1,10)/30;

% prepare it for the fill function
x_ax    = 1:10;
X_plot  = [x_ax, fliplr(x_ax)];
Y_plot  = [Data-1.96.*Data_sd, fliplr(Data+1.96.*Data_sd)];

% plot a line + confidence bands
hold on 
plot(x_ax, Data, 'blue', 'LineWidth', 1.2)
fill(X_plot, Y_plot , 1,....
        'facecolor','blue', ...
        'edgecolor','none', ...
        'facealpha', 0.3);
hold off 

Principalmente basado en esta pregunta: Trazado con transparencia

Ver p. estos archivos m en Matlab File Exchange:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top