Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

MATLAB, Simulink, Stateflow: Grundlagen, Toolboxen, Beispiel

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matlab - Skript in Octave überführen

 

Gast2000

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.05.2016, 09:32     Titel: Matlab - Skript in Octave überführen
  Antworten mit Zitat      
Hallo!

Ich arbeite gerade zum ersten Mal mit numerischer Software a la MATLAB/Octave.

Ich habe von meinem Betreuer ein Skript bekommen, das in MATLAB läuft. Das Problem ist, dass ich selber Octave verwende. Eigentlich beinhaltet das Skript keine besonders ungewöhnlichen Moves, aber es läuft trotzdem nicht ohne weiteres.
Ich brauche erstmal und recht dringend nur die Plots, die es ausspucken soll, um damit weiter zu arbeiten und zu sehen, was die Daten hergeben. Leider habe ich keine Ahnung, wie ich das zum Laufen bekomme. Einige Anpassungen habe ich schon vorgenommen, z.B. fopen statt load. Es läuft auch durch, aber das was ich will (eine Klassifizierung der Daten in Säulen) wird nicht geplottet.

Vielleicht kann irgendwer mir einen Hinweis geben, welche Funktionen nicht kompatibel sind?

Code:

clear,clc

pathToData = '/data/mast';

ff{1} = fopen(fullfile(pathToData,'FF010_201201010000-201512312350.asc'));ff{1}(ff{1}==99999)=nan;
ff{2} = fopen(fullfile(pathToData,'FF050_201201010000-201512312350.txt'));ff{2}(ff{2}==99999)=nan;
ff{3} = fopen(fullfile(pathToData,'FF110_201201010000-201512312350.txt'));ff{3}(ff{3}==99999)=nan;
ff{4} = fopen(fullfile(pathToData,'FF175_201201010000-201512312350.txt'));ff{4}(ff{4}==99999)=nan;
ff{5} = fopen(fullfile(pathToData,'FF250_201201010000-201512312350.txt'));ff{5}(ff{5}==99999)=nan;

ff=cell2mat(ff);

dd{1} = fopen(fullfile(pathToData,'DD010_201201010000-201512312350.txt'));dd{1}(dd{1}==99999)=nan;
dd{2} = fopen(fullfile(pathToData,'DD050_201201010000-201512312350.txt'));dd{2}(dd{2}==99999)=nan;
dd{3} = fopen(fullfile(pathToData,'DD110_201201010000-201512312350.txt'));dd{3}(dd{3}==99999)=nan;
dd{4} = fopen(fullfile(pathToData,'DD175_201201010000-201512312350.txt'));dd{4}(dd{4}==99999)=nan;
dd{5} = fopen(fullfile(pathToData,'DD250_201201010000-201512312350.txt'));dd{5}(dd{5}==99999)=nan;

zz    = [10 50 110 175 250];

%% density bar plot

deltaBin = 1;
takehights = [1 2];
legendStr = {'10m','50m','110m','175m','250m'};
figure(1)

for nPlot=1:length(takehights)
    subplot(1,length(takehights),nPlot);cla(gca)
    nBin = ceil(max(ff(:,takehights(nPlot)))/deltaBin);
    [counts,centers] = hist(ff(:,takehights(nPlot)),nBin);
    counts=counts/length(ff);
 
    y    = counts;
    x    = centers;

    bar(centers,counts),hold on
    plot(x(1):0.01:x(end)),hold off
    legend({'klassifizierte Messwerte'})

xlim([0 ceil(max(max(ff(:,takehights))))]);
    ylabel(['relative / -'],'Interpreter','none');
    xlabel('absolut / m/s','Interpreter','none')
    title(legendStr(nPlot),'Interpreter','none'),set(gca,'FontSize',18)
end


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 04.05.2016, 06:43     Titel:
  Antworten mit Zitat      
Zitat:
Das Problem ist, dass ich selber Octave verwende


Das ist also ein hausgemachtes Problem. Was spricht denn gegen die Verwendung von MATLAB? Hat die Uni keine Campuslizenz?

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Jan S
Moderator

Moderator


Beiträge: 10.993
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 04.05.2016, 10:27     Titel: Re: Matlab - Skript in Octave überführen
  Antworten mit Zitat      
Hallo Gast2000,

Auch Fragen nach "hausgemachte" Problemen mit Octave sind in diesem Forum natürlich willkommen.

Mangels Daten können wir Dein Programm nicht laufen lassen. Da es Deiner Erklärung nach syntaktisch in Ordnung ist, haben wir so kaum eine Chance herauszufinden, was nicht so läuft, wie Du es erwartest.
Kannst Du noch irgendwelche Details herausfinden? Neben dem Debuggen helfen oft auch einfache Print-Ausgaben. Vielleicht ist "takehights" leer oder die Daten enthalten nur NaNs, ... ?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2021 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.