Matlab - Empirical cumulative distribution function

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 13 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Empirical cumulative distribution function

Publicado por milena (3 intervenciones) el 05/02/2019 20:13:22
Quisiera graficar en matlab la "Empirical cumulative distribution function" de 6 diferentes series de precipitación mensual que se encuentran en archivos individuales de formato .txt. Cada archivo tiene tres columnas (anho, mes,dato). Los encabezados de la columna "dato" tienen distintos nombres ya que son "experimentos" diferentes. Adicionalmente, cada archivo tiene diferente cantidad de filas.

Inicialmente intenté abrir y unir todos los archivos, y posteriormente calcular y graficar la ECDF pero aún no logro graficar. Quisiera saber si alguien me puede orientar con este tipo de graficas


1
2
3
4
5
6
7
8
9
10
files = dir('*.txt');
    nfiles = length(files);
    data  = cell(nfiles,3);
    for i = 1 : nfiles
       fid = fopen(files(i).name);
 
       fclose(fid);
cdfplot(data)
h = cdfplot(data)
[h,stats] = cdfplot(data)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 5
Ha aumentado su posición en 13 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Empirical cumulative distribution function

Publicado por milena (3 intervenciones) el 06/02/2019 08:38:17
Mil gracias por tu respuesta, en el archivo adjunto encontrarás los 3 archivos en formato .txt
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Empirical cumulative distribution function

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 06/02/2019 14:17:30
1
2
3
4
5
6
7
8
9
10
clear
close all
files = dir('15*.txt');
nfiles = length(files);
Data=[ ];
for i = 1 : nfiles
     A= importdata(files(i).name);
     Data=[Data;A.data];
end
  [h,stats]= cdfplot(Data(:,3));


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha aumentado su posición en 13 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Empirical cumulative distribution function

Publicado por milena (3 intervenciones) el 06/02/2019 15:25:29
Mil gracias por tu ayuda, sin embargo el codigo grafica los datos en solo una serie (figura A). En realidad, quisiera graficar las series de cada archivo en una sola grafica, tal y como lo muestra la figura B que adjunto.


web
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Empirical cumulative distribution function

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 06/02/2019 15:32:47
1
2
3
4
5
6
7
8
9
10
11
clear
close all
files = dir('15*.txt');
nfiles = length(files);
hold on
for i = 1 : nfiles
     A= importdata(files(i).name);
     Data=A.data;
     [h,stats]= cdfplot(Data(:,3));
end
  hold off
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar