R legend pch сочетание символов и числовых
Можно ли использовать сочетание символа и числа в виде графических символов в легенде R?
plot(x=c(2,4,8),y=c(5,4,2),pch=16)
points(x=c(3,5),y=c(2,4),pch="+")
legend(7,4.5,pch=c("+",16),legend=c("A","B")) #This is the problem
Ответы
Ответ 1
Моя первая мысль состоит в том, чтобы нанести надпись дважды, один раз, чтобы напечатать символы символа и один раз напечатать числовые:
plot(x=c(2,4,8),y=c(5,4,2),pch=16)
points(x=c(3,5),y=c(2,4),pch="+")
legend(7,4.5,pch=c(NA,16),legend=c("A","B")) # NA means don't plot pt. character
legend(7,4.5,pch=c("+",NA),legend=c("A","B"))
ПРИМЕЧАНИЕ.. Как ни странно, это работает в собственном графическом устройстве R (в Windows) и в pdf()
, но не в устройствах bmp()
или png()
...
![enter image description here]()
Ответ 2
Используйте числовой эквивалент символа "+":
plot(x=c(2,4,8),y=c(5,4,2),pch=16)
points(x=c(3,5),y=c(2,4),pch="+")
legend(7,4.5,pch=c(43,16),legend=c("A","B"))
Ответ 3
Существуют фактически числовые эквиваленты для всех символов!
![введите описание изображения здесь]()
Источник: Дейв Робертс
Код pch представляет собой сумму координат Y и X приведенного выше графика.
- Например, символ
+
находится в строке (Y) 4 и столбце (X) 3 и поэтому может быть нарисован с использованием pch = 43.
Пример:
plot(x=c(2,4,8),y=c(5,4,2),pch=16)
points(x=c(3,5),y=c(2,4),pch="+")
legend(7,4.5,pch=c(43,16),legend=c("A","B"))
Ответ 4
Я столкнулся с этим вопросом несколько раз, поэтому я написал крошечную функцию ниже. Вы можете использовать для указания значения pch, например.
pch=c(15:17,s2n("|"))
String to Numeric