check.length("fill") 中的错误:'gpar' 元素 'fill' 的长度不能为 0

Nik*_*nko 2 r pheatmap

我在面对一个很奇怪的错误,可能是一个错误R 3.5.1pheatmap

以下代码工作正常:

rownames(df) <- colnames(mat)
xx <- pheatmap(mat, annotation_col=df)
Run Code Online (Sandbox Code Playgroud)

但以下不起作用:

rownames(df) <- str_sub(colnames(mat), 1, -3)
xx <- pheatmap(mat, annotation_col=df)
Run Code Online (Sandbox Code Playgroud)

一切看起来都很完美,但它给出了错误:

check.length("fill") 中的错误:'gpar' 元素 'fill' 的长度不能为 0

我重新加载Rstudio但问题仍然存在。的任何修改rownamesdf使其无法绘制图表。我也试过substr功能。有谁知道为什么会这样?

Nik*_*nko 9

问题是colnames(mat)应该与 匹配rownames(df),所以我不能只修改一个而没有另一个。以下代码有效:

colnames(mat) <- str_sub(colnames(mat), 1, -3)
rownames(df) <- colnames(mat)
xx <- pheatmap(mat, annotation_col=df)
Run Code Online (Sandbox Code Playgroud)