現在、クロスプラットフォームの互換性についていくつかのコードをチェックしています。 Travis-CIを使用して、GitHubコミットのubuntuでRパッケージをビルドしています。この1つの部分を削除すると、ビルドは成功しますが、このコードを含めると、次のエラーが表示されます。
Must request at least one colour from a hue palette.
これは正常にビルドされ、WindowsおよびOS Xで正常に動作します。この問題はubutuビルドでのみ発生します。また、これは、後続のコードを実行するビネットビルドステップ中に発生していることを指摘したいと思います。このエラーメッセージは、Rスケールライブラリの この関数に由来するようです。
次のようなデータがあります。
gene <- c("ISG20","ISG20","HEY1","ISG20","ACTB","MDM2","CDYL","HEY1","ACTB","UTP3","MDM2")
variable <- c("6h_ebov","1d_ebov","1d_ebov","2d_ebov","2d_ebov","2d_ebov","2d_restv","2d_restv","2d_restv","2d_restv","2d_restv")
value <- c(-4.54267311671893,0.523667984831315,0.552671011358972,3.97643775389922,0.888734866999937,1.26719604773752,1.31653814202267,2.28445821019938,1.00301304727651,1.86941283629719,1.33916249182697 )
filteredList <- data.frame(gene,variable,value)
> head(filteredData)
gene variable value
1 ISG20 6h_ebov -4.5426731
2 ISG20 1d_ebov 0.5236680
3 HEY1 1d_ebov 0.5526710
4 ISG20 2d_ebov 3.9764378
5 ACTB 2d_ebov 0.8887349
6 MDM2 2d_ebov 1.2671960
私はggplot2を使用してこのデータを表示しています。私のコマンドはおよそ次のとおりです。
library(ggplot2)
library(ggthemes)
stata_long_pal = c(stata_pal("s2color")(15), stata_pal("s1rcolor")(15))
plot_out <- ggplot(filteredList, aes(x=value, y=factor(variable, levels=as.character(unique(variable)), ordered=TRUE), label=variable, col=variable)) +
geom_point(stat='identity', aes(col=variable), size=3) +
theme_stata() +
scale_fill_manual(values=stata_long_pal) +
theme(axis.text.y = element_text(angle = 45, hjust = 1), plot.title = element_text(size=14, face="bold", hjust=0)) +
guides(col=guide_legend(ncol=6%/%3)) +
theme(legend.text = element_text(size=12)) +
theme(legend.title=element_blank()) +
theme(axis.text=element_text(size=12, face="bold")) +
theme(text = element_text(size=22,margin = margin(t = 0, r = 10, b = 0, l = 0))) +
labs(x="", y="", title="Differentially Expressed Genes", subtitle="Log2 Fold-Change")
これは、エラーを引き起こしている部分です。多分aes()またはscale_fill_manual()のどちらかで、問題は多少技術的でなければならないように感じます。これらをいくつかの異なる方法で変更すると効果があるかどうかを確認しようとしていますが、Travis-CIを使用しているため、変更のたびにテストするのにかなり時間がかかります。
誰が問題を引き起こしているのかを見たり、なぜこれが起こっているのかについての洞察を持っていますか?事前に感謝します。
編集:問題をこのコードに絞り込んだことを指摘したいと思います。
geom_point(stat='identity', aes(col=variable), size=3)
私が次のことをすればうまくいきますが、私の着色は失われます。
geom_point()
EDIT2:データセクションをより使いやすいように変更しました。今すぐWordをコピー/貼り付けしてください。
私の経験では、これはラベルのNAになったときに起こります。あなたの「変数」変数は、ggplotの呼び出しでcol =引数に必要な文字列の代わりにNAを持っていると確信しています。また、aesの内外でcol =が2回あることに気付きました。 Shinyを使用してこれに遭遇し、2セントを提供すると思った。