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

Histogramm plot, wie?

 

Master1991
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 18.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.01.2014, 13:19     Titel: Histogramm plot, wie?
  Antworten mit Zitat      
Hi,

habe einen Vektor der circa so aufgebaut ist

Code:

85   0.0011
86   0.0020
87   0.0042
88   1.5408e-04
89   0
90   0.0014
97   0.0528
98   0.0174
99   0.0252
100   0.0380
101   0.1414


usw...

Die Zahlen links Stellen die Ascii Werte der Buchtsaben des Alphabets da (bekomm ich die auch als Zeichen dargestellt? char() funktioniert nicht)
Die Spalte rechts, stellt die Absolute Häufigkeit im Text dar.

Mein Problem ist nun ich möchte ein Histogramm das 52 Balken hat, (also A-Z,a-z) (linke spalte) und jeder Balken die Höhe der Rechten Spalte hat.

Wie bekomm ich das hin?
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


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

Code:
data = [85   0.0011
86   0.0020
87   0.0042
88   1.5408e-04
89   0
90   0.0014
97   0.0528
98   0.0174
99   0.0252
100   0.0380
101   0.1414];
bar(data(:,1), data(:,2))
set(gca, 'XTick', data(:,1))
set(gca, 'XTickLabel', cellstr(char(data(:,1))))


Wenn etwas nicht funktioniert, dann bitte grundsätzlich immer dazuschreiben:
- wie es verwendet wurde (Code)
- was dabei nicht funktioniert hat.

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 18.10.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.01.2014, 14:22     Titel:
  Antworten mit Zitat      
Okay, das nächste mal mit Code...

ich hatte halt Versucht mit hist(data,52), aber scheinbar bin ich aus der Matlab hilfe nicht ganz schlau geworden.

Das was du mit jetzt gezeigt hast ist auf jeden Fall genau das, was ich haben wollte.

Eventuell kannst du mir hier auch noch helfen, es geht darum das zunächst erstmal eine Tabelle erzeugt wird mit den relativen Häufigkeiten. Dort stehen aber die Buchstaben nun auch nicht drin:

Code:

colnames = {'Buchstabe', 'rel. Häufigkeit'};
t = uitable(gcf, 'Data', B, 'ColumnName', colnames,'Position', [10 10 260 400]);
 


B ist halt das data array.
Das Problem ist nun: Es wäre schön wenn in Spalte 1 auch schon in der Tabelle die Buchstaben stehen, aber char(B(:,1)) klappt nicht und mit cellstr klappt das irgendwie auch nicht.

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

das Problem ist, dass du da Zahlen und Zeichen gemischt haben willst. So gehts:
Code:

data2 = [cellstr(char(data(:,1))), num2cell(data(:,2))];
colnames = {'Buchstabe', 'rel. Häufigkeit'};
t = uitable(gcf, 'Data', data2, 'ColumnName', colnames,'Position', [10 10 260 400]);


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.