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

  • Google

    Google

    18 EYLÜL 2005
  • RogerBuckChrist

    RogerBuckChr

    9 Temmuz 2011
  • Titan Lee Hai

    Titan Lee Ha

    14 Temmuz 2008