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

X-Achsen Beschriftung, richtige x-Werte

 

sKelet0n
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 06.10.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2015, 13:21     Titel: X-Achsen Beschriftung, richtige x-Werte
  Antworten mit Zitat      
Hallo zuammen,

Code:
set(gca,'XLim',[0 lastX])
    set(gca,'XTick',[0:100:lastX])
    %set(gca,'XTickLabel',['0';' ';'1';' ';'2';' ';'3';' ';'4'])
    lbls = strcat(strtrim(cellstr(num2str(xKoor(:)))))
    set(gca,'XTickLabel',lbls)
    %xlim([0,lastX])


lastX = Wert
xKoor = Vektor mit x-Werten

Damit versuche ich die ganze Zeit rumzuspielen. Ich möchte die Werte des Vektor auf der X-Achse auftragen. Das Problem ist, dass der Abstand zwischen diesen Werten nicht gleich ist.

Was ich eigentlich nur haben möchte:
Zu jedem x-Wert im Plot den entsprechenden Wert auf der x-Achse.
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 09.11.2015, 17:58     Titel: Re: X-Achsen Beschriftung, richtige x-Werte
  Antworten mit Zitat      
Hallo sKelet0n,

Code:
x = [1,2,5,7];
axes('XTick', x, 'XLim', [1,7]);

Wenn die Labels den wirklichen Werten entsprechen, erzeuigt Matlab sie automatisch.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
sKelet0n
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 06.10.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.11.2015, 09:43     Titel:
  Antworten mit Zitat      
Hi,

ich kann die Grenzen, hier: 1,7, nicht mit "echten" Werte bestücken, da die die letzte Grenze bei mir jedes mal anders ist.

axes('XTick', x, 'XLim', [0,x_max]);
x_max=1000

funktioniert leider nicht
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.11.2015, 10:21     Titel:
  Antworten mit Zitat      
Hallo sKelet0n,

Bitte lasse die Leser nicht raten. Statt "funktioniert nicht" wäre es viel hilfreicher zu erklären, was geschieht: Bekommst Du eine Fehlermeldung oder weicht das ergebnis von Deinen erwartungen ab. Bei letzterem, erkläre bitte beides.

Zitat:
ich kann die Grenzen, hier: 1,7, nicht mit "echten" Werte bestücken, da die die letzte Grenze bei mir jedes mal anders ist.

Und wie kann man dann heraus bekommen, welche Grenzen Du möchtest? Dies kann ich nicht erraten.

Zitat:
Code:
axes('XTick', x, 'XLim', [0,x_max]);
x_max=1000

Was soll dieser Code erreichen? Wieso definierst Du x_max auf genau diesen Wert, allerdings nachdem Du es verwendet hast? Welche X-Limits möchtest Du denn bekommen?

Wie wäre dies:
Code:
axes('XTick', x, 'XLim', [min(x), max(x)]);

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
sKelet0n
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 06.10.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.11.2015, 10:36     Titel:
  Antworten mit Zitat      
Jan S hat Folgendes geschrieben:

Zitat:
ich kann die Grenzen, hier: 1,7, nicht mit "echten" Werte bestücken, da die die letzte Grenze bei mir jedes mal anders ist.

Und wie kann man dann heraus bekommen, welche Grenzen Du möchtest? Dies kann ich nicht erraten.

Zitat:
Code:
axes('XTick', x, 'XLim', [0,x_max]);
x_max=1000

Was soll dieser Code erreichen? Wieso definierst Du x_max auf genau diesen Wert, allerdings nachdem Du es verwendet hast? Welche X-Limits möchtest Du denn bekommen?


Was ich damit sagen will, dass die obere Grenze abhängig von Werten ist, die eingelesen. Diese Werte sind meine X-Koordinaten. Somit ist x_max=max(Vektor).


Code:
axes('XTick', x, 'XLim', [min(x), max(x)]);

liefert

Zitat:
Error using axes
While setting the 'XTick' property of Axes:
Value must be a vector of type single or double whose values increase

Error in Plotten (line 4Cool
axes('XTick', x, 'XLim', [min(x), max(x)]);


mfg
Private Nachricht senden Benutzer-Profile anzeigen
 
sKelet0n
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 06.10.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.11.2015, 10:11     Titel:
  Antworten mit Zitat      
Hi

habs zum Teil hinbekommen.

set(gca,'XTick', xKoor) funktioniert für mein 2D Plot
bei meinem 3D Plot funktioniert der Befehl leider nicht. Der Plottet dann nur bis zum ersten X-Wert

mfg
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.