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

Darstellung von nur einer Dezimalstelle

 

pfeili
Forum-Century

Forum-Century


Beiträge: 177
Anmeldedatum: 27.08.08
Wohnort: ---
Version: R2019b
     Beitrag Verfasst am: 05.11.2009, 16:21     Titel: Darstellung von nur einer Dezimalstelle
  Antworten mit Zitat      
Liebe Leute,

ich möchte meine berechneten Werte in Textboxen eines GUI ausgeben lassen. Wie schaffe ich es, dass nur eine Nachkommastelle angegeben wird und wohin muss ich den entsprechenen Befehl schreiben?

Nach meinen Berechnungen, welche durch einen Push-Button ausgelöst werden, sollen die errechneten Oktavkomponenten in den dafür vorgesehenen Feldern des GUI erscheinen.

Code:

% Werteausgabe des Spektrums und des Gesamtwertes

set(findobj('Tag','cv_63'), 'String', num2str(LWaS(2)))
set(findobj('Tag','cv_125'), 'String', num2str(LWaS(3)))
.
.
.
 


Vielen Dank im Voraus.

pfeili
Private Nachricht senden Benutzer-Profile anzeigen


Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 05.11.2009, 16:37     Titel:
  Antworten mit Zitat      
Hallo,

kommt darauf an, ob Du 2 Stellen haben willst oder immer eine Nachkommastelle:
Code:
num2str(pi, 2)
ans =
3.1
num2str(pi*10, 2)
ans =
31
 

oder eben mit sprintf:
Code:
sprintf('%.1f', pi)
ans =
3.1
sprintf('%.1f', 10*pi)
ans =
31.4
 


Ciao,
Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
pfeili
Themenstarter

Forum-Century

Forum-Century


Beiträge: 177
Anmeldedatum: 27.08.08
Wohnort: ---
Version: R2019b
     Beitrag Verfasst am: 06.11.2009, 07:53     Titel:
  Antworten mit Zitat      
Hallo Titus,

ich hätte gern generell immer eine Nachkommastelle. Wenn ich es nach der von dir vorgeschlagenen ersten Methode mache

Code:

set(findobj('Tag','esv_63'), 'String', num2str(LWaS(2), 3))
 


dann gibt er mir nur in dem Fall das von mir gewünschte Ergebnis, wenn ich eine zweistellige Zahl mit einer Nachkommastelle habe, z.B. 84.1.

Habe ich jedoch nur eine einstellige Zahl, dann gibt er mir diese mit zwei Nachkommastellen aus, z.B. 4.53.

Ich gebe ihm also zu verstehen, dass er mir immer die ersten drei Zahlen nennt, egal wo das Komma steht. Es soll aber so sein, dass er mir immer die Zahl und eine Nachkommastelle anzeigt.

Was muss ich da noch beachten?

Vielen Dank. pfeili
Private Nachricht senden Benutzer-Profile anzeigen
 
Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 06.11.2009, 10:08     Titel:
  Antworten mit Zitat      
Hallo,

äh, genau aus dem Grund habe ich die zweite Methode gleich drangehängt gehabt?
Code:
set(findobj('Tag','esv_63'), 'String', sprintf('%.2f', LWaS(2)))
 
sollte genau das machen ... ???

Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
pfeili
Themenstarter

Forum-Century

Forum-Century


Beiträge: 177
Anmeldedatum: 27.08.08
Wohnort: ---
Version: R2019b
     Beitrag Verfasst am: 09.11.2009, 14:47     Titel:
  Antworten mit Zitat      
Hallo Titus,

Alles klar. Mit

Code:

set(findobj('Tag','esv_63'), 'String', sprintf('%.1f', LWaS(2)))
 


bekomme ich die eine Nachkommastelle.

Vielen herzlichen Dank dafür.

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