故障排除:无法找到多边形边缘

6

有人知道这个错误消息是什么意思吗?我试图将字体更改为Helvetica,然后对于小数据框它可以工作。但是,当我尝试绘制大数据框时,错误再次出现。

我在Mac上使用RStudio。

> head(Merged_Columns.m)
    SYMBOL Cond variable    value
1    Baz2b    T       0h  40.5629
2     Tpm4    T       0h  44.8539
3    H2-K1    T       0h 218.9180
4    Usp22    T       0h  23.6377
5     Mreg    T       0h  95.8775
6 Arhgap30    T       0h  40.1333

p <- ggplot(Merged_Columns.m, aes(variable, value, colour=Cond)) + geom_point() 
p + theme_bw(base_family= 'Helvetica') + facet_wrap(~SYMBOL,ncol = 2) + scale_y_continuous(trans = log2_trans(),
                                                      breaks = trans_breaks("log2", function(x) 2^x),
                                                      labels = trans_format("log2", math_format(2^.x))) +
 theme(axis.text.x  = element_text(angle=90)) +
  labs(title="10 > CPM > 8", x= "Time (h)" , y= "Expression (log2)")


Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  : 
  polygon edge not found
2个回答

2

我可以在Mac 1.2.5019上的RStudio中运行你的小样本代码,并不时地复现你的错误。

问题可能与此问题相同,该问题指向底层图形代码中显示表达式标签的一些低级错误,尤其是使用math_format()和上标。自您最初发布以来,这个问题已经引起了维护者的一些关注和增量修复,虽然它可能还没有完全解决。

你应该怎么做?

  1. 确保你正在使用最新的RStudio,以确保你获得未来错误修复的好处。
  2. 当使用某些表达式组成ggplot2中的标签时要注意。

这并不是一个解决方案,但如果你从scale_y_continuous()中完全删除labels = ...参数,或选择另一种格式,希望你不会收到同样的错误。


还有一个关于字体可用性的问题在SO上(Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : Polygon edge not found),虽然该错误消息有额外的警告,并且在你的例子中似乎没有问题。


1

我曾经遇到过hrbrthemes(基于ggplot)的类似问题,阅读日志后,我发现了这个消息:

NOTE: Either Arial Narrow or Roboto Condensed fonts are required to use these themes.
  Please use hrbrthemes::import_roboto_condensed() to install Roboto Condensed and
  if Arial Narrow is not on your system, please see ...

确保安装了特定的字体,对我来说 hrbrthemes::import_roboto_condensed() 起到了作用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接