WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Messwerte aus excel bzw. csv

 

glueckskind8
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.11.2015, 13:24     Titel: Messwerte aus excel bzw. csv
  Antworten mit Zitat      
Hallo zusammen,

ich bin absoluter Neuling im Umgang mit Matlab und habe folgendes Problem:
Ich habe ein Programm, das mir eine unbestimmte Anzahl von Werten einer Messfahrt in eine .csv-Datei schreibt. Da ich nur wenig Erfahrung mit Matlab verfüge, habe ich die Messwerte in eine Excel-Datei importiert, dort liegen die Daten in folgender Form vor:

0 Batteriestrom x y
0 Batteriestrom x y
0 Batteriestrom x y
0 Batteriestrom x y
0 Batteriestrom x y
0 Batteriestrom x y
.
.
.
1 Transformer_Voltage x y
1 Transformer_Voltage x y
1 Transformer_Voltage x y
1 Transformer_Voltage x y
1 Transformer_Voltage x y
1 Transformer_Voltage x y
.
.
.

Ich möchte nun mit Matlab die x- und y-Werte in verschiedenen Diagrammen visualisieren.
Mein Problem bei der ganzen Sache: momentan bereite ich die Excel-Datei in folgender Form auf:

0 Batteriestrom x y 1 Transformer_Voltage x y
0 Batteriestrom x y 1 Transformer_Voltage x y
0 Batteriestrom x y 1 Transformer_Voltage x y
0 Batteriestrom x y 1 Transformer_Voltage x y
0 Batteriestrom x y 1 Transformer_Voltage x y
0 Batteriestrom x y 1 Transformer_Voltage x y

und setze das so um:

Code:

clear all, close all, clc
[filename,path] = uigetfile('*.xls', 'Load XLS File');

mw = xlsread(fullfile(path,filename));

ti      = mw(:,3); %Zeit in s
i      = mw(:,4); %Batteriestrom in A
tu     = mw(:,7); %Zeit in s
u   = mw(:,8); %Transformer_Voltage in V

figure(1)
line(ti,i,'Color','green','LineWidth',2)
xlim([0 350000])
ylim([-200 150])
xlabel('Zeit [s]')
ylabel('Batteriestrom [A]')
print(gcf,'-dpng','-r300', 'Batteriestrom.png')

figure(2)
line(tu,u,'Color','green','LineWidth',2)
xlim([0 350000])
ylim([350 450])
xlabel('Zeit [s]')
ylabel('transformer voltage actual value [V]')
print(gcf,'-dpng','-r300', 'Transformer_Voltage.png')

 


Das funktioniert zwar, aber ist sehr umständlich.
Gibt es eine Möglichkeit, dass Matlab aufgrund des Wechsels des Index (in meinen Fall 0 oder 1) anfängt in ein neues Diagramm schreibt? Wie bereits anfangs erwähnt, ist die Anzahl der Messwerte immer unterschiedlich.
Vielleicht gibt es auch eine Möglichkeit die Messwerte direkt aus der csv. auszulesen, das überfordert mich momentan aber ein bisschen.

Vielleicht könnt ihr mir eine Anregung oder einen Tipp geben, wie ich das besser umsetze.

Vielen Dank im Voraus
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 12.11.2015, 14:09     Titel:
  Antworten mit Zitat      
ich bin mir noch nicht ganz klar ob ich dien problem verstanden habe
aber du kannst mittels logischem indizieren einfach die werte zuweisen.
Code:
ti=mw(mw(:,1)==0),3)

so in der art.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
glueckskind8
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.11.2015, 12:59     Titel:
  Antworten mit Zitat      
Super Very Happy , vielen Dank,
da habe ich wohl viel zu kompliziert gedacht Laughing.
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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.