2017-10-11 20 views
1

我试着画在GGPLOT2库的图形与另外ggrepel的:错误 - 在ggrepel包GGPLOT2可视化数据

set.seed(42) 
ggplot(mtcars) + 
    geom_point(aes(wt, mpg), size = 5, color = 'grey') + 
    geom_label_repel(aes(wt, mpg, fill = factor(cyl), label = rownames(mtcars)), 
        fontface = 'bold', color = 'white', 
        box.padding = 0.35, point.padding = 0.5, 
        segment.color = 'grey50') + 
    theme_classic(base_size = 16) 

但我得到了以下错误:

Error in convertUnit(x, unitTo, "x", "dimension", "x", "dimension", valueOnly = valueOnly) : 
    'x' argument must be a unit object 

谢谢?

+1

我跑你的代码只添加'库(ggplot2)'和'库(ggrepel)',它运行没有错误。 – clemens

+0

谢谢。我不知道为什么我的错是?我使用R 3.4.0版本 –

+0

同样在这里,使用ggrepel_0.7.0和ggplot2_2.2.1 – clemens

回答

2

该错误的原因是:

box.padding = 0.35, point.padding = 0.5 

ggrepel version 0.6.11改变为接受号码如0.35或从unit(0.35, "lines")返回值。

如果您使用ggrepel 0.6.11之前的版本,那么请尝试使用:

unit(0.35, "lines"), unit(0.5, "lines") 

我的猜测是,也许你正在使用ggrepel 0.6.5从CRAN。您可以考虑从CRAN更新到最新版本,即0.7.0。

+0

非常感谢卡米尔。我做的 ! –