公告
财富商城
积分规则
提问
发文
2019-02-26 04:31发布
疯言疯语
As this picture shows, how can I make these labels align right?
I am using legend in R.
From ?legend
?legend
## right-justifying a set of labels: thanks to Uwe Ligges x <- 1:5; y1 <- 1/x; y2 <- 2/x plot(rep(x, 2), c(y1, y2), type = "n", xlab = "x", ylab = "y") lines(x, y1); lines(x, y2, lty = 2) temp <- legend("topright", legend = c(" ", " "), text.width = strwidth("1,000,000"), lty = 1:2, xjust = 1, yjust = 1, title = "Line Types") text(temp$rect$left + temp$rect$w, temp$text$y, c("1,000", "1,000,000"), pos = 2)
EDIT:
I can't find a way to automatically align the legend with the lines on the right. But you may be able to produce a legend using text placement and option bty="n" to remove the border.
text
bty="n"
## similar to above x <- 1:5; y1 <- 1/x; y2 <- 2/x plot(rep(x, 2), c(y1, y2), type = "n", xlab = "x", ylab = "y") lines(x, y1); lines(x, y2, lty = 2) temp <- legend("topright", legend = c(" ", " "), text.width = strwidth("1,000,000"), lty = 1:2, xjust = 1, yjust = 1, bty="n") text(4, 2,"lbl1") text(3.9, 1.92,"mylbl2")
最多设置5个标签!
From
?legend
EDIT:
I can't find a way to automatically align the legend with the lines on the right. But you may be able to produce a legend using
text
placement and optionbty="n"
to remove the border.