我有一個情節g產生:
library(ggplot2)
g = ggplot(mtcars, aes(mpg, cyl))
geom_point()
現在,我想使用annotate(或其他任何東西)將文本添加到繪圖中。我特別希望文本出現在圖的左下方。
這有效:
g annotate("text", x = 12, y = 4, label = "Boring Label")

但是,這種方法的問題是我必須知道繪圖坐標 (x = 12, y = 4) 才能將文本放置在繪圖的左下方。我將為許多不同的圖自動執行此程序,并且我想在不知道圖的最小和最大坐標的情況下將相同的文本放置在同一位置(左下角)。例如,像c(0.3, 0.1)or c(x = 0.3, y = 0.1)(0 = minimum, 1 max for x and y) 會很有幫助。但這不適用于annotate("text", x = 0.3, y = 0.1, label = "Boring Label").
uj5u.com熱心網友回復:
您可以嘗試這種方法,通過每個變數的最大值來縮放位置。當然,您可以0.95根據您希望文本所在的位置更改 的值。
ggplot(mtcars, aes(mpg, cyl))
geom_point()
annotate("text", x = max(mtcars$mpg) * 0.95, y = max(mtcars$cyl) * 0.95, label = "Boring Label")

uj5u.com熱心網友回復:
您可以使用以下命令以 npc 單位指定文本位置library(ggpp):
g ggpp::geom_text_npc(aes(npcx = x, npcy = y, label=label),
data = data.frame(x = 0.05, y = 0.05, label='Boring label'))

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/343786.html
下一篇:根據R中的條件向繪圖添加紋理
