R graphics: добавление меток к гистограмме с накоплением - PullRequest
3 голосов
/ 02 сентября 2010

Я ищу способ добавления меток, то есть абсолютных значений, в гистограмму с накоплением, используя основные функции графика R. Эти метки должны быть внутри столбцов с накоплением.

Спасибо!

Ответы [ 3 ]

8 голосов
/ 02 сентября 2010

barplot вернет среднюю позицию x баров, так что вы можете сделать

mydata <- matrix(c(10, 21, 22, 33, 45, 23, 22, 43, 33), nrow=3)

# b will contain the x midpoints of the bars
b <- barplot(mydata)

# This will write labels in the middle of the bars, horizontally and vertically
text(b, colMeans(mydata), c("Label1", "Label2", "Label3"))

# This will write labels in the middle of the middle block
text(b, mydata[1,]+mydata[2,]/2, c("LabelA", "LabelB", "LabelC"))

РЕДАКТИРОВАТЬ: перечитывая ваш вопрос, я думаю, это то, что вы хотите(а может и нет, но я все равно напишу: D)

# Find the top y position of each block 
ypos <- apply(mydata, 2, cumsum)
# Move it downwards half the size of each block
ypos <- ypos - mydata/2
ypos <- t(ypos)

text(b, ypos, mydata)
1 голос
/ 02 сентября 2010

Как насчет простой функции text()?

Вы можете просто добавить строку, где хотите, например:

text (x = ..., y = ..., labels = c("foo bar 1000"))
0 голосов
/ 02 сентября 2010

Может быть, вы можете использовать или проверить функцию barp пакета plotrix

...