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

Weiteren Wert auf Y-Achse anzeigen

 

Nadine_WOB

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.10.2015, 12:08     Titel:
  Antworten mit Zitat      
Servus,
ich bin auch auf der Suche nach Hilfe.
Und zwar habe ich ein plot erstellt und würde gerne einen weiteren Wert auf der Y-Achse angezeigt bekommen. Also suchte ich die Punkte mit dem Curser heraus, und wollte die Punkte einfach mit den Befehlen des YTick und YTickLaber plotten.
Bekomme allerdings eine Fehlermeldung und weiß nicht weiter.
Kann mir jemand helfen?
Ich habe folgendes eingetragen:

Code:
probplot ('exponential', X)
yt= get (gca, 'YTick')
ytl= get (gca, 'YTickLabel')
yt= [-9.21029036989284 -7.60065240744323 -6.90725507052372 -5.29581214253503 -4.60014922677658 -2.97019524904216 -2.25036732731245 -1.24589932370724 -0.366512920581664 -0.00063 0.326634259978281 0.834032445247956 1.09718870036495 1.5271796258079 1.93264473391607 2.22032680636786]
ytl= ['0.0001';'0.0005';'0.001';'0.005';'0.01';'0.05';'0.1';'0.25';'0.5';'0.6321';'0.75';'0.9';'0.95';'0.99';'0.999';'0.9999']
set (gca, 'YTick', yt)
set (gca, 'YTickLabel', ytl)

yt =

  Columns 1 through 11

   -9.2103   -7.6007   -6.9073   -5.2958   -4.6001   -2.9702   -2.2504   -1.2459   -0.3665    0.3266    0.8340

  Columns 12 through 15

    1.0972    1.5272    1.9326    2.2203


ytl =

0.0001
0.0005
0.001
0.005
0.01  
0.05  
0.1  
0.25  
0.5  
0.75  
0.9  
0.95  
0.99  
0.999
0.9999


yt =

  Columns 1 through 11

   -9.2103   -7.6007   -6.9073   -5.2958   -4.6001   -2.9702   -2.2504   -1.2459   -0.3665   -0.0006    0.3266

  Columns 12 through 16

    0.8340    1.0972    1.5272    1.9326    2.2203

Error using vertcat
Dimensions of matrices being concatenated are not consistent.


Die Position, den ich per Curser ermittelt habe lautet:
Position: (576000 -0.00063)
Somit fügte ich in die yt Zeile den Wert von -0.00063 ein und in der ytl den Wert wie er dafür angezeigt werden soll (0.6321)

Wo habe ich denn nun den Fehler gemacht?!
Dachte, wenn man die Position eines Punktes kennt, dass man die dann auch einfach in den YTick und YTickLaber hinzufügen kann und somit der weitere Wert dargestellt wird!?

Wäre super fesh, wenn mir jemand helfen kann.
Gesplittet: 08.10.2015, 15:24 Uhr von Jan S
Von Beitrag Y-Achse beschriften mit YTickLabel aus dem Forum Grafiken und Plots


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 08.10.2015, 15:28     Titel:
  Antworten mit Zitat      
Hallo Nadine_WOB,

Bitte hänge eine neue Fragen nicht an einen bestehenden Thread an. Danke!

Zitat:
Error using vertcat
Dimensions of matrices being concatenated are not consistent.

In welcher Zeile tritt der Fehler auf? Vielleicht hast Du einfach nur einen Vektor über mehrere Zeilen definiert und die ", ..." am Zeilenende vergessen?

Wenn Du einen Fehler im Forum besprichst, ist es immer hilfreich, die komplette Meldung zu posten, insbesondere die Zeile, in der der Fehler auftaucht.

Mit dem eigentlichen mathematischen Problem hat diese Meldung nichts zu tun.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Nadine_WOB

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.10.2015, 09:32     Titel:
  Antworten mit Zitat      
Hallo Jan,
ok, dann weiß ich für das nächste Mal Bescheid!
Also er gibt mir nur das so an, wie ich es hineinkopiert habe!
Er sagt jetzt nicht, in welcher Zeile der Fehler explizit liegt! Sad
Kannst du mir ansonsten helfen, wie ich einen bestimmten Punkt auf der Y-Achse darstellen lassen?! Grundsätzlich war das mit YTick und YTickLAbel nicht verkehrt, oder?
Viele Grüße
 
Harald
Forum-Meister

Forum-Meister


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

wenn du Code mit "Evaluate Selection" (F9) oder "Run Section" etc. ausführst, wird die Zeile des Fehlers nicht angezeigt. Bitte mal den Code als ganzes mit "Run" ausführen, dann bekommst du die Zeile der Fehlermeldung.

Einen Fehler, den ich in dem Code sehe: die mehreren Strings sollten mit { } erstellt werden.
Code:
ytl= {'0.0001';'0.0005';'0.001';'0.005';'0.01';'0.05';'0.1';'0.25';'0.5';'0.6321';'0.75';'0.9';'0.9';'0.99';'0.999';'0.9999'};


Wobei ich mich insgesamt frage, was mit dem Code eigentlich erreicht werden soll. Insbesondere die vielen hart codierten Werte sehen "etwas komisch" aus.

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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.10.2015, 08:16     Titel:
  Antworten mit Zitat      
Hallo Harald,
danke für die Antwort,
aber leider funktioniert das auch alles nicht!
Also ich hatte einen probplot erstellt und wollte eine zusätzliche Wahrscheinlichkeit auf der Y-Achse darstellen lassen, also die bei 63,21%. Nun hatte ich mit dem Curser den Punkt annähernd an dieser Wahrscheinlichkeit gesucht und dadurch ergab Matlab mir den Punkt -0.0063. Also dachte ich mir, setze ich den Punkt einfach in YTick ein und bei YTickLabel die 63,21 und er würde das dann anzeigen, aber irgendwie ist ja mein Fehler, den ich nicht finde!
Vielleicht kannst du mir nochmal helfen, Harald?
 
Harald
Forum-Meister

Forum-Meister


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

Code:
X = exprnd(5, 1000, 1);
probplot ('exponential', X)

yt= get (gca, 'YTick');
ytl= get (gca, 'YTickLabel');

newpos = interp1(str2num(ytl), yt, 0.6321, 'spline');
ytnew = [yt, newpos];
ytlnew = [ytl; '0.6321'];

[ytnew, order] = sort(ytnew);
set (gca, 'YTick', ytnew);
set (gca, 'YTickLabel', ytlnew(order,:));


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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.10.2015, 13:01     Titel:
  Antworten mit Zitat      
Wow wow wow , Harald, DANKE!
Leider verstehe ich die Befehle nun gar nicht mehr, klappte aber! Danke
Jetzt habe ich nur eine Frage, bedeutet der Befehle nur, dass er die Wahrscheinlichkeit in dem Wahrscheinlichkeitsnetz bei 63,21% anzeigt und somit auf alle weiteren plots übertragen lässt?
Also kann ich nun andere Versuchsreihen mit dem gleichen Befehl erstellen und es werden diese exakt angezeigt oder basiert diese Zahl auf nur dem Fall?

Viele Grüße und vielen vielen vielen vielen Dank!
 
Harald
Forum-Meister

Forum-Meister


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

geh's doch mal Zeile für Zeile durch. Teilweise sind es ja die Befehle, die du ohnehin schon verwendet hast.

Es werden immer die 63,21% an der "richtigen" Stelle angezeigt.
Wobei ich hier einfach interpoliert habe, so 100%ig richtig mag das also nicht sein.

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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.10.2015, 13:16     Titel:
  Antworten mit Zitat      
Ah ok, super,
ich bin/war ein wenig überfordert mit folgendem Befehl
Code:
newpos = interp1(str2num(ytl), yt, 0.6321, 'spline');

da ich dazu vorher nichts gefunden habe im Internet/Forum
Aber super, danke Harald!

Bis bald
Nadine
 
Harald
Forum-Meister

Forum-Meister


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

die Idee dahinter: wir haben auf der y-Achse ja eine verzerrte Skalierung. Aufgrund der bisherigen Skalierung will ich nun feststellen, wo 0,6321 hin soll.

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.