SORU
13 Temmuz 2011, ÇARŞAMBA


ggplot'In qplot kaynak üzerinde çalıştırmak değil

Hadi 2 kaynak dosyaları, ilk example1.r adlı ve ikinci bir example2.r (aşağıda) var varsayalım.

example1.r

plot(1:10,1:10)

example2.r

qplot(1:10,1:10)

Ben example1 kaynak zaman.r, grafik çizilir. Ben example2 kaynak, ancak, yok.r. Çözüm nedir?

(example2 qplot.r ggplot2'In fonksiyonu)

CEVAP
13 Temmuz 2011, ÇARŞAMBA


Bu FAQ 7.22: Why do lattice/trellis graphics not work? ünlüdür.

Ggplot2 veya kafes gibi grid grafik için aslında çizmek için grafik nesnesini yazdırmak için gerekir.

Etkileşimli komut satırında bu otomatik olarak yapılır. Her yerde (kaynaklı içindeki dosyalar, döngüler, fonksiyonlar, Sweave parçalar) açıkça baskı gerekir.

print (qplot (1 : 10, 1 : 10))

Alternatif olarak, qplot baskı yapmak için tanımlayabilirsiniz:

qplot <- function (x, y = NULL, z = NULL, ...) {
  p <- ggplot2::qplot (x = x, y = y, z = z, ...)
  print (p)
}

(eksen etiketlerini x ve y için bu değişir).

Tam olarak etkileşimli oturum bir kullanıcı türü gibi kod yazmak istiyorum nereye nakışları bu yaklaşımı kullanıyorum.


EditYukarıda olduğu gibi cevap bırakıyorum. Ama bu geçici çözüm, IMHO tamamen artık demode (ve her zaman küçük tembel bir niş için iyi oldu) olduğunu unutmayın.

  • .R dosyaları:source's seçeneği print.eval=TRUE değerlendirme sonucu baskı davranışlara yol açacaktır etkileşimli komut satırı gibi.
  • .Rnw dosya:Varsayılan olarak knitr etkileşimli komut satırı wrt davranışlarını taklit eder. printıng. knitr R paket nakışları için Sweaving motoru olarak belirtilebilir unutmayın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 0TACTICAL0HIPPY0

    0TACTICAL0HI

    30 EYLÜL 2012
  • BiGSH0TROB

    BiGSH0TROB

    7 NİSAN 2011
  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008