2010-09-17 5 views
5

Es gibt 25 Symbole, die durch den Parameter 'pch' in der Funktion points definiert sind.Punktsymbole in R

Wie kann ich zeichnen mehr als diese 25 Symbole

Dank

+0

dies wird Ihre Frage nicht beantworten, aber wenn Sie aus irgendeinem Grund> 25 Symbole plotten müssen, beginnen Sie sie zu färben, um die Vielfalt zu erhöhen – Dave

+4

Wenn Sie mehr als 25 Symbole in einer Handlung benötigen, müssen Sie Ihr Problem überdenken. – John

Antwort

1

Sie können einfach nicht ... nur dieser Satz implementiert wird. Eine Möglichkeit besteht darin, Zeichenvektoren (zB pch=c('a','b','c')) zu verwenden, um Punkte zu erhalten, die durch a s, b s, ... markiert sind - dies erweitert die Menge auf etwa 60 (mit Zahlen), sieht aber nicht besonders gut aus.

2

Sie können die grundlegenden Zeichen- und Zeichenfunktionen verwenden, um Ihre eigenen Symbole zu erstellen. Verwenden Sie "Linien" oder "Segmente" zum Zeichnen von Linien und "Polygon" für gefüllte Bereiche. Sie könnten also eine Funktion namens ‚littleHouse‘ haben, die x nimmt, y für das Zentrum und w und h für Breite und Höhe, dann würden Sie etwas tun:

for(i in 1:nrows(data)){ 
di = data[i,] 
littleHouse(di$x,di$y,di$w,di$h) 
} 

Sein mehr spezifisch ist wahrscheinlich eine Verschwendung von Zeit, es sei denn, Sie haben etwas Bestimmtes im Sinn. Sie können dies nicht über den Parameter pch tun.

8

Sie können alle Optionen für eine bestimmte Schriftart sehen, wie unter Verwendung von Code:

plot(0:15, 0:15, type='n') 
points((0:255)%% 16, (0:255) %/% 16, pch=0:255, font=5) 

Ändern der font = an verschiedene Nummern für verschiedene Optionen. Es gibt ein paar mehr Optionen mit der Symbolfunktion. Wenn du noch mehr willst, dann schau dir die Funktion my.symbols im TeachingDemos-Paket an (ich bin der Autor von my.symbols und die meisten TeachingDemos-Pakete). Es sind bereits mehrere Symbole verfügbar und es gibt eine Option zum Erstellen eigener benutzerdefinierter Symbole. Es gibt also keine Grenzen.

+0

Autorschaft Offenlegung bitte: p – MichaelChirico

+0

@MichaelChirico, beziehen Sie sich auf den Code mit 'plot' und' points'? Wenn ja, wen verdient die Urheberschaft? Ich gebe zu, dass ich nicht der erste bin, der den oben genannten Code entwickelt hat, aber ich weiß nicht, wer zuerst darauf gekommen ist oder eine Referenz, wird sich freuen, sie mit aufzunehmen, wenn Sie darauf hinweisen können. Oder soll ich zugeben, dass ich der Autor von 'my.symbols' und dem TeachingDemos-Paket bin? –

+0

nono, nur letzteres ;-) – MichaelChirico