2017-02-24 5 views
1

Ich habe einen Datenrahmen wie folgt:Wie wird jede Spalte in der Plot-Funktion anders dargestellt?

 A   B  C  D   E  F   
T1  1   0  4  6   2  5  
T2  1   0  4  6   2  5   
T3  1   0  4  6   2  5   
T4  1   0  4  6   2  5 

Ich bin eine Ordination zu tun und ich möchte nur jede Spalte eine andere Farbe haben und eine entsprechende Legende.

points(dat.pcoa$points[ ,1], dat.pcoa$points[ ,2], 
    pch = 19, cex = 3, bg = "gray", col = "gray") 

ich diesen Code haben geschrieben, habe ich weiß nicht, wie eine Palette diese zuweisen, wie ich eine große Auswahl an Datenpunkte haben, so kann ich nicht einen Vektor (c <- "red","blue") zuweisen, da es ein sehr mühsam sein würde Übung

+0

[Ein Beispiel mit 'ggplot2'] (http://Stackoverflow.com/a/36388031/2204410) – Jaap

+0

Das Schöne an ggplot2 ist, dass es verschiedene Layer und weitere Beispiele online w.r.t. dazu und die Verwendung der Palette. Allerdings muss ich meine Grundstücke in Grund R machen (langer Grund) und ich brauche eine Palette wegen der schiere Anzahl der Spalten, die ich habe. – Ash

Antwort

2

RColorBrewer Paket hat einige fertige Paletten, aber wenn Ihr Ziel nur Basis R ist, können Sie versuchen, eine selbst zu bauen. Es gibt mehrere Basisfunktionen, die Farbstrings erzeugen - ich schlage vor, hsv() zu verwenden, da es einfacher ist, verschiedene Farben derselben Sättigung zu erzeugen, während rgb() erfordert, alle drei Argumente zu ändern.

beispielsweise 10 Farben mit Farbtönen Herstellung 0,1 bis 1, die Aufrechterhaltung der Sättigung und Helligkeit bei 0,7:

barplot(1:10, col=sapply(1:10/10, hsv, 0.7, 0.7)) 

colorful barplot


EDIT: rainbow scheint ein Einbau-Wrapper zu sein Genau das tun - hsv aufrufen, um eine gewünschte Anzahl von Farben zu erzeugen. Danke @ d.b!

+1

Vielleicht Erwähnung 'Regenbogen' auch –

Verwandte Themen