Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   
Bücher:

Studierende:
Praktikant Toolentwicklung Matlab (m/w)
Branche: Beratung, Expertise, Fahrzeugtechnik, Fahrzeugteile, Technische Dienstleistungen
MBtech Group GmbH & Co. KGaA - Fellbach

Abschlussarbeit / Praktikum: Entwicklung Matlab (m/w)
Branche: Informationstechnologie, Elektrotechnik, Elektronik
GIGATRONIK Technologies GmbH - Ulm

Werkstudent (m/w) im Bereich Hochfrequenzmesstechnik
Branche: Mess-, Regel-, Automatisierungstechnik, Telekommunikation, Nachrichtentechnik
ROHDE & SCHWARZ GmbH & Co. KG - München

Bachelor-/ Masterarbeit in der Softwareentwicklung
Branche: Fahrzeugtechnik, Fahrzeugteile
über Campusjäger GmbH - Karlsruhe

Praktikant/Werkstudent (m/w) für 5G Research- & Development-Aktivitäten
Branche: Elektrotechnik, Elektronik, Mess-, Regel-, Automatisierungstechnik, Telekommunikation, Nachrichtentechnik
ROHDE & SCHWARZ GmbH & Co. KG - München

weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Messwerte in einen 3D-Plot

 

[CHRIS]

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.11.2017, 14:44     Titel: Messwerte in einen 3D-Plot
  Antworten mit Zitat      
Hallo,

Ich bin neu in Matlab und habe 20 Touchstone-dateien an meinem Messplatz aufgenommen. Diese habe ich dann in Matlab in Impedanzen umgerechnet und geplottet. Nun möchte ich die Normalverteilung der 20 Impedanzvektoren in einem 3D-Plot darstellen, wobei die Z-Achse meine Frequenzen abbilden soll.

Leider komme ich auf keinen grünen Zweig und weiß auch nicht wirklich welche Funktion am besten dafür geeignet wäre.Ich hoffe jemand kann mir weiterhelfen.

P.S.: Wer den Code ausprobieren will kann das mit der angehängten Testdatei machen. (Datei muss im selben Ordner liegen, in dem auch die Matlabdatei liegt)

Code:
%
Hier noch den Code der die Impedanzen ausrechnet:

%-----------------------------------------------------------------------%
% Schleife zum öffnen der 20 Dateien
%-----------------------------------------------------------------------%

for i=1:1:20
 
    touchstonefile = (['Pruefling_',num2str(i),'.S2P']);


%-----------------------------------------------------------------------%
% Parameter aus der Touchstone-Datei lesen
%-----------------------------------------------------------------------%

Werte=yparameters(touchstonefile); %liest Y-Parameter aus der Datei
y21=rfparam(Werte,2,1); %Zieht die Y21 Parameter raus
z21= (-1*y21).^-1; %umrechnen in die Impedanz

%-----------------------------------------------------------------------%
% Plotten der Impedanz
%-----------------------------------------------------------------------%

% figure('Name','Z-Realteil');
% hold on;
% grid on;
% plot (Werte.Frequencies, real(z21), 'r')
% set(gca, 'XScale', 'log')
% % set(gca, 'YScale', 'log')
% axis tight
%
% figure('Name','Z-Imaginaerteil');
% hold on
% grid on;
% plot (Werte.Frequencies, imag(z21),'r')
% set(gca, 'XScale', 'log')
% % set(gca, 'YScale', 'log')
% axis tight

figure('Name',(['Z-Absolut',num2str(i)]));
hold on;
grid on;
plot (Werte.Frequencies, abs(z21), 'r')
set(gca, 'XScale', 'log')
% set(gca, 'YScale', 'log')
axis tight


end

 


Grüße Chris

L_1uH.zip
 Beschreibung:
Testdatei (1uH)

Download
 Dateiname:  L_1uH.zip
 Dateigröße:  2.83 KB
 Heruntergeladen:  4 mal


SigiSorglos
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 67
Anmeldedatum: 24.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.11.2017, 16:45     Titel:
  Antworten mit Zitat      
Schau dir am besten erst einmal die Hilfen zu plot3() oder auch surf() an. Mit dem plot() Befehl kann man nur zweidimensionale Graphen erstellen.
Private Nachricht senden Benutzer-Profile anzeigen
 
[CHRIS]

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.11.2017, 11:57     Titel:
  Antworten mit Zitat      
Das habe ich gemacht und wollte mit meshgrid arbeiten bekomme aber immer folgende Fehlermeldung:

Error using surf (line 75)
Z must be a matrix, not a scalar or vector

Error in Touchstone_read (line 64)
surf(X,Y,Z)

Code:

x = z21; %  Messwerte
mu = mean(x);
sig = std(x);
pdfNorm =normpdf(x,mu,sig);
[X,Y]= meshgrid (Werte.Frequencies, abs(x));
Z = abs(pdfNorm);
surf(X,Y,Z)
 


Z liegt bei mir als Vektor vor aber ich weiß nicht wie ich das ändern soll damit es klappt.
 
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 goPCB.de


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


Copyright © 2007 - 2017 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.