2010-09-17 10 views
5

Istnieje 25 symboli zdefiniowanych przez parametr "pch" w funkcji punktów.Symbole punktów w R

Jak mogę wyciągnąć więcej niż 25 tych symboli

Dzięki

+0

to nie będzie odpowiedź na twoje pytanie, ale jeśli z jakiegoś powodu musisz wykreślić> 25 symboli, zacznij je barwić, aby zwiększyć różnorodność – Dave

+4

Jeśli potrzebujesz więcej niż 25 symboli na wykresie, musisz ponownie przemyśleć swój problem. – John

Odpowiedz

1

po prostu nie może ... tylko ten zestaw jest realizowany. Jedną z opcji jest użycie wektorów znaków (np. pch=c('a','b','c')), aby uzyskać punkty oznaczone przez a s, b s, ... - to rozszerza zestaw do około 60 (z liczbami), ale nie wygląda zbyt dobrze.

2

Możesz użyć podstawowych funkcji kreślenia i rysowania, aby opracować własne symbole. Użyj "linii" lub "segmentów" do rysowania linii i "wielokąta" dla wypełnionych obszarów. Więc może mieć funkcję o nazwie „littleHouse”, które odbywają X, Y dla centrum i W i H do szerokości i wysokości, wtedy można zrobić coś takiego:

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

Będąc bardziej specyficzny jest prawdopodobnie stratą czas, chyba że masz coś konkretnego na myśli. Nie można tego zrobić za pomocą parametru pch.

8

można zobaczyć wszystkie opcje dla danej czcionki przy użyciu kodu takich jak:

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

zmienić czcionkę = Aby różnych numerów dla różnych opcji. Istnieje jeszcze kilka opcji za pomocą funkcji symboli. Jeśli chcesz jeszcze więcej, sprawdź funkcję my.symbols w pakiecie TeachingDemos (jestem autorem my.symbols i większości pakietu TeachingDemos). Dostępnych jest już kilka symboli i daje możliwość tworzenia własnych symboli, więc naprawdę nie ma ograniczeń.

+0

Ujawnienie autorstwa: p – MichaelChirico

+0

@MichaelChirico, czy odnosisz się do kodu z 'plot' i' points'? Jeśli tak, to kto, twoim zdaniem, zasługuje na kredyt autorski? W pełni przyznaję, że nie jestem pierwszym, który wymyślił powyższy kod, ale nie wiem, kto pierwszy wymyślił ten kod lub odniesienie, z przyjemnością je uwzględnię, jeśli potrafisz to wskazać. Czy chcesz, żebym przyznał, że jestem autorem 'my.symbols' i pakietu TeachingDemos? –

+0

nono, tylko ten drugi ;-) – MichaelChirico

Powiązane problemy