Ответ 1
plotrix
обеспечивает функции rectFill
и barp
, которые позволяют заполнять бары пользовательскими формами.
barp
производит барьеры и вызывает rectFill
чтобы заполнить их символами. Символы могут быть указаны с использованием параметров pch
умолчанию (эталонная диаграмма) или с помощью настраиваемой строки, см. Примеры ниже.
# install the package
install.packages('plotrix')
# examples with varying pch parameters
require(plotrix)
a <- 1:4
barp(t(a), pch=t(1:4))
barp(t(a), pch=t(c("*","$","~","@")))
К сожалению, barp
не очень гибкий:
-
Данные должны быть представлены в матричном формате для указания различных символов. Столбцы матрицы должны соответствовать последовательности параметров pch. Следовательно, потребность в
t()
в текущих примерах. -
Как только
pch
указан, график становится черно-белым. ФункцияrectFill
позволяет управлять цветом символов черезpch.col
, ноbarp
не разрешает эту опцию. Чтобы решить эту проблему, я добавил эллипсис (...
) в исходный кодbarp
чтобы иметь возможность передавать дополнительные аргументы функцииrectFill
. Модифицированный код (barp2
) доступен здесь.
Пример использования измененного кода:
# load the barp2 function
require(devtools)
source_gist("https://gist.github.com/tleja/8592929")
# run the barp2 function
require(plotrix)
a <- 1:4
barp2(t(a), pch=t(1:4), pch.col=1:4)
EDIT: Похоже, что самая последняя версия пакета может иметь ошибку, так как некоторые пользователи не могут воспроизвести графики. Если это произойдет, попробуйте установить более раннюю версию plotrix
используя следующий код:
require(devtools)
install_url("http://cran.r-project.org/src/contrib/Archive/plotrix/plotrix_3.5-2.tar.gz")