2013-06-01 22 views
5

をknitr使用ggmap含めますエラー:私はknitrでggmapライブラリを使用してマップを含めるようにしようとしています

Error in UseMethod("depth"): no applicable method for 'depth' applied to an object of class "NULL"

そして

が、私は内部のqmplotラインをラップしようとした、最終的なPDFにはマップがありません(...)を評価、それはうまくいきませんでした


ライブラリー(knitr)の出力。 SessionInfo()

> library(knitr) 
> sessionInfo() 
version 3.0.1 (2013-05-16) 
Platform: i686-redhat-linux-gnu (32-bit) 

locale: 
[1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_US.UTF-8  LC_COLLATE=en_US.UTF-8  
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8  
[7] LC_PAPER=C     LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] stats  graphics utils  datasets grDevices methods base  

other attached packages: 
[1] knitr_1.2  vimcom_0.9-8 setwidth_1.0-3 

loaded via a namespace (and not attached): 
[1] digest_0.6.3 evaluate_0.4.3 formatR_0.7 stringr_0.6.2 tools_3.0.1 

私は、次のとRscript(すなわちないVIMの中から)を経由して同じコードを実行してみました:

Rscript -e "library(knitr); knit('map.Rnw')" 

そして私は、同様のエラーを取得:

Error in UseMethod("depth") : 
no applicable method for 'depth' applied to an object of class "NULL" 
Calls: knit ... grid.draw -> grid.draw.gTableChild -> upViewport -> depth 

ggmap v 2.3とggplot v 0.9.3の使用。 1

+1

問題を再現できません。 'library(knitr);を投稿してください。 sessionInfo() ' –

+0

'ggmap'は' v2.3'ですか?これは変です。私はあなたとほぼ同じ環境を持っていますが、問題を再現できません –

答えて

7

問題が見つかりました:最終的なドキュメントにマップを含めるためにtikzデバイスを使用していました。そのtikzデバイスは、マップ(または少なくとも大きなマップ)では動作しないようです。

私はデバイスをpdfまたはpngに変更し、マップがドキュメントに問題なく含まれていました。

0

が発生しました。このエラー(R3.4.1)コマンドは、これを解決して分離し、大きなデータフレーム(28x32000)

ggplot(z, aes(x=T,y=A,fill=F), title="D") + geom_bar(aes(fill=F), stat ="identity", position="dodge", colour="black") + facet_grid(P~T,scales='free_x',space='free_x') 
+ theme(strip.text.y = element_text(angle = 0), axis.text.x = element_text(angle = 270)) + guides(col=guide_legend(ncol=1)) 

の上に付加し、多くの追加コマンド、および間違いなく、読みやすく長いggplotコマンドを呼び出すとき:

z2 <- ggplot(z, aes(x=T,y=A,fill=F), title="D") 
z2 <- z2 + geom_bar(aes(fill=F), stat ="identity", position="dodge", colour="black") 
z2 <- z2 + facet_grid(P~T,scales='free_x',space='free_x') 
z2 <- z2 + theme(strip.text.y = element_text(angle = 0), axis.text.x = element_text(angle = 270)) 
z2 <- z2 + guides(col=guide_legend(ncol=1)) 
z2 

これは、(コマンドのサイズ)*(オブジェクトのサイズ)に関するより一般的なエラーかどうかわかりませんか?

EDITは:、再びおそらくメモリの問題をか - - おそらく、より大きな、このように中断する時間のかかるタスクの可能性が高いがプロットウィンドウのサイズを変更する際ggplot2する小さなコマンドでこのエラーを再発見しました。