Verfasst am: 26.04.2010, 13:47
Titel: mat datei auswählen und laden->plotten
hallo leute,
ich habe einige mat dateien die beinhalten messungen wie beschleunigung,geschwindigkeit,km-stand usw.
ich möchte mit gui vom verzeichnis eine mat datei (von vielen) auswählen können.
... danach möchte ich auswählen was geplottet wird zB geschwindigkeit-Zeit und beschleunigung-zeit oder geschwindigkeit-zeit und kmStand-zeit.
hab schon paar m-files geschrieben. da ich nochn anfänger bin habe ich immer erst die mat datei geladen (also durch doppelklick im verzeichnis) und danach mit m-file geplottet.
jedesmal das gleiche zu machen ist doof
wer kann mir da weiter helfen.
Verfasst am: 26.04.2010, 14:03
Titel: Re: mat datei auswählen und laden->plotten
xPashAx hat Folgendes geschrieben:
hallo leute,
ich habe einige mat dateien die beinhalten messungen wie beschleunigung,geschwindigkeit,km-stand usw.
ich möchte mit gui vom verzeichnis eine mat datei (von vielen) auswählen können.
... danach möchte ich auswählen was geplottet wird zB geschwindigkeit-Zeit und beschleunigung-zeit oder geschwindigkeit-zeit und kmStand-zeit.
hab schon paar m-files geschrieben. da ich nochn anfänger bin habe ich immer erst die mat datei geladen (also durch doppelklick im verzeichnis) und danach mit m-file geplottet.
jedesmal das gleiche zu machen ist doof
wer kann mir da weiter helfen.
ich bedank mich schon vorraus.
Hey, sowas in der Art mache ich auch gerade (Themengebiet: Wasserbau).
Eine recht hilfreiche Funktion ist das hier:
Mit der listdlg Box kann der Benutzer eine Matfile auswählen und dann eine der beinhalteten Variablen auswählen - diese Variable/Struct kannst du dann für die Plots verwenden.
% --- Executes on selection change in listbox1. function listbox1_Callback(hObject, eventdata, handles) % hObject handle to listbox1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns listbox1 contents as cell array % contents{get(hObject,'Value')} returns selected item from listbox1 function loadselected(fname) ifnargin==0 [fname pname] = uigetfile('*.mat','select MAT-file');
if ~pname ; return ; end
fname = fullfile(pname,fname);
end% if var = whos('-file',fname);
[sel,ok] = listdlg('PromptString','Select a file:','ListString',{var.name});
if ok
evalin('caller',sprintf('load %s %s',fname,sprintf('%s ',var(sel).name)))
t = sprintf('%s ',var(sel).name);
Hallo,
ich würde den Code in die Callback function eines Pushbuttons schreiben, dann wird die Auswahlprozedur gestartet, wenn du den Button drückst.
Du hast btw das
% --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
listBoxInhalt=get(handles.listbox1,'String');
% --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
listBoxInhalt=get(handles.listbox1,'String');
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
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.