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 färben, 4 Farben

 

newbie82
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2010, 03:13     Titel: Histogramm färben, 4 Farben
  Antworten mit Zitat      
Hallo,

ich habe folgenden Vektor (s. Anhang) und möchte ihn als Histogramm anzeigen lassen.

Diesen Code habe ich:

Code:

[A,N]=hist(histogramm,unique(histogramm));
bar(A);
set(gca,'XTick',N+1);
set(gca,'XTickLabel',N);
xlabel('Zugangspunkt-Nummer')
ylabel('Dauer der Verbindung [s]')
 


Sieht auch top aus, nur dass ich gern 4 Farben hätte:

0 = schwarz
1, 2, 3, 4, 5 = blau
6, 7, 8, 9, 10, 11 = grün
12, 13, 14, 15, 16 = rot

Ist sowas möglich? Vielen Dank schon mal!

newbie
Private Nachricht senden Benutzer-Profile anzeigen


newbie82
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2010, 03:14     Titel:
  Antworten mit Zitat      
Noch eine kleine Zusatzfrage:

Kann man den Hexcode einer Farbe eingeben?
Wenn nicht, auch nicht schlimm, dann halt ein normales grün / blau / rot.. aber mit Hexfarbe wär noch cooler :mgreen:
Private Nachricht senden Benutzer-Profile anzeigen
 
lilov
Forum-Century

Forum-Century


Beiträge: 193
Anmeldedatum: 05.05.10
Wohnort: Bremerhaven
Version: ---
     Beitrag Verfasst am: 12.09.2010, 09:50     Titel:
  Antworten mit Zitat      
Hi,

hmmm...wo ist der Anhang den du erwähnst?Smile


Gruß,

lilov
Private Nachricht senden Benutzer-Profile anzeigen
 
kakoh
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.09.10
Wohnort: Tübingen
Version: ---
     Beitrag Verfasst am: 12.09.2010, 09:52     Titel:
  Antworten mit Zitat      
das kannst du mit dem folgenden Befehl machen:

Code:

x=bar(A)
set(x,'FaceColor', [R G B])
 


Der Vektor [R G B] entspricht den RGB-Werten einer Frabe. Z.B. für die Farbe türkis wären diese Werte [1 1 0]
_________________

www.katja-steffen.de
Private Nachricht senden Benutzer-Profile anzeigen
 
newbie82
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2010, 14:29     Titel:
  Antworten mit Zitat      
Ach, ich hatte ne *.mat Datei drangehangen, jetzt seh ich erst, dass das Format nicht unterstützt wird.

Kannst du dir einen Vektor generieren, der nur ganze Zahlen zwischen 0 und 16 annimmt? Ich krieg das auf die Schnelle nicht hin Confused

@ kakoh:
So kann ich von allen Balken die Farbe ändern, aber ich kriegs mit deinem Tipp leider nicht hin, nur ein paar Farben zu ändern Embarassed Bin noch neu Sad
Private Nachricht senden Benutzer-Profile anzeigen
 
kakoh
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.09.10
Wohnort: Tübingen
Version: ---
     Beitrag Verfasst am: 12.09.2010, 20:24     Titel:
  Antworten mit Zitat      
Code:

A=[1:16];
B=[1:16];
bar(A(1:2),B(1:2),'FaceColor',[1 1 0]);
hold on
bar(A(3:5),B(3:5),'FaceColor',[1 0 0]);
hold on
bar(A(6:16),B(6:16),'FaceColor',[0 1 0]);
 

_________________

www.katja-steffen.de
Private Nachricht senden Benutzer-Profile anzeigen
 
newbie82
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2010, 20:34     Titel:
  Antworten mit Zitat      
Hmm ich bin wohl zu blöd dazu, wenn ich das eingebe, krieg ich das raus:



Und wenn ich versuche etwas zu ändern, geht's komplett schief Confused
Private Nachricht senden Benutzer-Profile anzeigen
 
kakoh
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.09.10
Wohnort: Tübingen
Version: ---
     Beitrag Verfasst am: 12.09.2010, 20:52     Titel:
  Antworten mit Zitat      
wie sind genau die Vektoren, aufgrund deren du das Diagramm erstellen möchtest?
_________________

www.katja-steffen.de
Private Nachricht senden Benutzer-Profile anzeigen
 
newbie82
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2010, 21:36     Titel:
  Antworten mit Zitat      
So sieht mein Vektor aus:

Code:

6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
1
1
6
6
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
0
7
7
7
7
7
7
7
7
7
7
7
7
0
0
0
8
8
8
13
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
0
0
0
0
0
0
0
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
14
0
0
0
0
0
0
0
0
0
0
0
0
0
3
3
3
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
4
4
4
4
4
4
4
10
10
10
10
10
10
10
10
10
10
10
10
0
15
0
0
0
0
0
0
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
0
0
0
0
0
0
0
16
0
0
0
0
0
0
0
0
0
0
6
6
6
6
6
6
6
6
 
Private Nachricht senden Benutzer-Profile anzeigen
 
kakoh
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.09.10
Wohnort: Tübingen
Version: ---
     Beitrag Verfasst am: 12.09.2010, 21:52     Titel:
  Antworten mit Zitat      
du musst glaube ich zusätzlich zu deinem vektor noch einen indexvektor erstellen.
Code:

A=[6 6 6 7 8 3 4 5 6 7 8 9];
index=[1:12];
bar(index(1:3),A(1:3),'FaceColor',[1 1 0]);
hold on
bar(index(4:6),A(4:6),'FaceColor',[1 0 1]);
hold on
bar(index(7:12),A(7:12),'FaceColor',[1 0 0]);
 

_________________

www.katja-steffen.de
Private Nachricht senden Benutzer-Profile anzeigen
 
newbie82
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 10.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.09.2010, 23:05     Titel:
  Antworten mit Zitat      
Ich kapiers nicht, bin glaub ich zu blöd dazu Sad

Was muss ich denn genau eingeben? Meinen Code + deinen hinterher? Confused
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.11.2010, 21:23     Titel:
  Antworten mit Zitat      
Hallo,

und newbie82 haste es hinbekommen, habe ähnliches Problem, allerdings ist mein Histogramm anders aufgebaut:

Code:

figure; hist_dataset = [-3 3 -1 3 3 5 1; -1 3 1 1 5 -1 1 ;1 3 1 1 1 1 1 ]'; [counts,x] = hist(hist_dataset, -1:1:6,2);
x = repmat(x,1,3);
bar(x,counts*100./sum(counts(:,1)));
hold on;
grid on;
legend('Reihe 1', 'Reihe 2', 'Reihe 3','best');
h = findobj(gca,'Type','patch');
set(h(1),'FaceColor','gr','EdgeColor','w');
set(h(2),'FaceColor','r','EdgeColor','w');
set(h(3),'FaceColor','b','EdgeColor','w');
title(['\fontsize{14} farbiges Histogramm']);
xlabel('\fontsize{12} xAchse [-]');
ylabel('\fontsize{12} [%]');
hold on;
 


Man sieht, zumindest bei mir, die Reihe 1 ist nicht grün wie ich mir mit dem handle erhofft habe...

Aber wie kann ich die einzelnen BAlken ansprechen wenn nicht über nen handle?

Vg
 
newbie82_

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.11.2010, 21:27     Titel:
  Antworten mit Zitat      
Ne, ich hab getrickst und das Histogramm per Hand gefärbt Mr. Green
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2010, 11:37     Titel:
  Antworten mit Zitat      
Hallo Newbie,

wie haste das gemacht? Du musst doch nen hanlde bekommen und dem weisste dann die FArbe zu, oder wie soll ich das verstehen?

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