2017-08-25 147 views
0

我正在構造一個變量x和y的散點圖。每個點都使用geom_text進行標記。 geom_text的大小由第三個變量z控制。我可以在geom_text中設置最小字體大小嗎?

有沒有辦法指定最小可接受的字體大小?我曾看過this question,但它僅討論如何將大小設置爲固定值。

在下面的示例中,我使用mtcars重現了該問題,其中geom_text的大小由'disp'控制。它可以工作,但某些標籤太小而無法閱讀(一旦'disp'的值低於約100)。

library(ggplot2) 
ggplot(mtcars, aes(y=mpg, x=cyl)) + geom_text(aes(label=rownames(mtcars),size=disp)) 

我希望能夠指定,例如,大小由「DISP」的值來控制,但它應該是不小於3

顯然,這會意味着更大的文字也被放大了。

回答

1

您可以在scale_size

ggplot(mtcars, aes(y=mpg, x=cyl)) + 
    geom_text(aes(label=rownames(mtcars),size=disp)) + 
    scale_size(range = c(6, 9)) 

# a little more reasonable 
ggplot(mtcars, aes(y=mpg, x=cyl)) + 
    geom_text(aes(label=rownames(mtcars),size=disp)) + 
    scale_size(range = c(2, 5)) 
範圍
相關問題