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

Ergebnis ähnlich wie contourplot, aber ohne Matrix als Inpu

 

Norma

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.05.2016, 14:54     Titel: Ergebnis ähnlich wie contourplot, aber ohne Matrix als Inpu
  Antworten mit Zitat      
Hallo!

Ich habe ein Beispiel, bei dem ich modellierte Werte mit gemessenen Zeitreihen vergleiche! Dafür habe ich jeweils die gemessenen und die berechneten Reihen für verschiedene Punkte korrelliert und den Korrellationskoeffizienten geplottet! Siehe Code unten:

Code:


for ii=1:130
   
y_A(ii) = y_Richtung(ii);
x_A(ii) = x_Richtung(ii);  
 
%SPEARMAN
a = gemessen_1(:,ii);
b = berechnet_1(:,ii);

[RHO,PVAL] = corr(a,b,'Type','Spearman');


hold on
    grid on
    plot(x_A(ii),y_A(ii),'.b','LineWidth',1)

    xlabel('Abstand zu Sensor [m]', 'FontSize',15)
    ylabel('Abstand zu Sensor [m]','FontSize',15)
    title('Korrellationskoeffizient nach Spearman', 'FontSize',15)
    text(x_A(ii), y_A(ii),num2str(RHO), 'FontSize',8)
   
end
 


Gibt es nun eine Möglichkeit, das auch irgendwie färbig zu unterlegen damit es optisch einfacher zu interpretieren ist? Ähnlich wie bei contour-plots?

Würde mich sehr freuen wenn da jemand einen Vorschlag hat!!

Lg Norma


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 16.05.2016, 16:33     Titel:
  Antworten mit Zitat      
Hallo,

nach welchen Kriterien soll denn eingefärbt werden?

Grundsätzlich kann man aus Vektordaten Matrixdaten interpolieren und das dann 3D darstellen, siehe hier für ein Beispiel:
http://de.mathworks.com/help/matlab.....as-a-surface.html#f0-9140

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Norma

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.05.2016, 18:03     Titel:
  Antworten mit Zitat      
Hi,

Hm, ja ich denke interpolation ist wohl die einzige möglichkeit... Ansonsten hätte ich einfach gedacht je näher das Ergebnis an 1 ist, desto grüner wird es schattiert oder so, also nichts superaufwändiges ^^

einfach nur aus interesse: wie würdest du das darstellen? würdest du auch interpolieren? Oder es überhaupt anders angehen? Gibt es vielleicht überhaupt eine bessere Variante die Ergebnisse graphisch darzustellen?

Auf jeden Fall mal danke für die Antwort!

Lg Norma
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 16.05.2016, 18:26     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Ansonsten hätte ich einfach gedacht je näher das Ergebnis an 1 ist, desto grüner wird es schattiert oder so

Welches Ergebnis? Die Korrelation, oder was?

Zitat:

einfach nur aus interesse: wie würdest du das darstellen? würdest du auch interpolieren? Oder es überhaupt anders angehen? Gibt es vielleicht überhaupt eine bessere Variante die Ergebnisse graphisch darzustellen?

Schwer zu sagen, da ich den Code mangels Daten nicht reproduzieren kann.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Norma

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.05.2016, 18:42     Titel:
  Antworten mit Zitat      
Hallo,

ja genau, mit Ergebnis meinte ich das Ergebnis der Korrellation! Hatte jetzt einen anderen Einfall: ist es möglich die Farbe des Markers je nach Wert anzupassen?

Mit 'MarkerFaceColor' kann man die ja einstellen - wie würde ich das in diesem Fall in die Schleife einbauen können? Habe folgendes versucht:

Code:

for ii=1:130
   
y_A(ii) = y_Richtung(ii);
x_A(ii) = x_Richtung(ii);  
 
cmap=colormap(jet(10)); %Weil ich 10 Farbstufen möchte
c=randi(1,1,130);%Weil ich 130 Stationen habe

%SPEARMAN
a = gemessen_1(:,ii);
b = berechnet_1(:,ii);

[RHO,PVAL] = corr(a,b,'Type','Spearman');
RHO2=roundn(RHO,-2)*100;

hold on
    grid on
    plot(x_A(ii),y_A(ii),'.b','MarkerSize',15,'MarkerFaceColor',cmap(c(ii),:),'LineWidth',1)

    xlabel('Abstand zu Sensor [m]', 'FontSize',15)
    ylabel('Abstand zu Sensor [m]','FontSize',15)
    title('Korrellationskoeffizient nach Spearman', 'FontSize',15)
    text(x_A(ii), y_A(ii),num2str(RHO2), 'FontSize',8)
   
end
 

 



Ich glaube ich habe da aber einen ziemlichen Denkfehler drin, jedenfalls funktioniert es nicht wie ich möchte und gibt mir für jeden Marker die selbe Farbe...

Was muss ich ändern?

Lg Norma
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 16.05.2016, 19:03     Titel:
  Antworten mit Zitat      
Hallo,

schau dir mal c an. Du erstellst einen Vektor mit Zufallszahlen zwischen 1 und 1, also 1.

Mit gscatter wäre das wohl einfacher.

Grüße,
Harald
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.