2012-10-08 22 views
12

rgl R paketi, etkileşimli 3B şekiller çizmeye ve bu değerleri bir html belgesine (writeWebGL() işleviyle) kaydetmeye olanak tanır.PowerPoint'te bir R animasyonlu 3D çizimi gömme

PowerPoint sunumunda böyle etkileşimli bir 3D şekil koymak istiyorum. Mümkün mü ?

DÜZENLEME: Google yardımıyla Dieter Menne yanıtını inceledikten sonra, benim sonuçlar aşağıdaki olanlar:

    bir U3D dosyası ve/veya bir Asymptote bir 3D grafik dönüştürmek için
  • Şu Luke Tierney'in yöntem dosya, rgl paketiyle değil, yalnızca misc3d paketi ile oluşturulan grafikler için çalışır.
  • 3D rgl grafikleri VRML/X3D dosyalarına dışa aktarma gelecekteki bir plan olarak duyuruldu. Belki de bu bir Powerpoint ve/veya LaTeX sunumuna bir 3D rgl grafiğin gömülmesini sağlayabilir.

DÜZENLEME: Eğer Powerpoint sunumu (veya, daha da R-ish, kullanım projeksiyon/lateks) aktarmak, ve Luke Tierney en anlatıldığı gibi 3D-arsa katıştırıyorsanız related discussion

+1

Arka planda çalışan bir tarayıcı veya hatta R var ve – James

cevap

5

mümkündür Eğer bir HTML belgesine bu koyarsanız makale

http://homepage.stat.uiowa.edu/~luke/R/misc3d/misc3d-pdf/misc3d-pdf.pdf

+0

arasında geçiş yapmak için Alt-Tab'i kullanın. Teşekkürler.Tabii ki LaTeX render'ını tercih ederim ama sunumumu gerçekten de PowerPoint ile yapmam gerekiyor. "Powerpoint sunumunu aktarma" ile ne demek istiyorsun? –

+0

PP sunumunu pdf olarak dışa aktarın. –

+0

Nasıl? PDFcreator ile? –

4

, muhtemelen bir Slide içindeki HTML açmak için IWebBrowser2 nesneyi kullanabilirsiniz. Bir 3D grafiğin nasıl işleyeceğinden emin değilim ve R'ye aşina değilim ya da daha fazla öneri sunamayacağım, ancak slaytta bir WebBrowser nesnesi oluşturmaya çalışarak başlayabilir ve HTML dosyasına gidin.

Sub InsertHTMLFrame() 
Dim sld as Slide 
Dim shp as Shape 
Dim wb as Object 
Set sld = ActivePresentation.Slides(1) '## Modify as needed 

'## Create the shape container, you will need to modify the L/T/W/H to fit your document 
Set shp = sld.Shapes.AddOLEObject(100, 200, 200, 150, _ 
    "Shell.Explorer.2") 
shp.Name = "3dgraphic" 
Set wb = shp.OLEFormat.Object 

wb.Navigate "C:\Users\you\Desktop\exported3dgraphic.html" 
End Sub 

Slayt modu sırasında bu akışının kontrolü biraz yanıltıcıdır olabilir, ama bu grafik böyle IE üzerinden düzgün bir şekilde oluşturulup sağlanan başarmak mümkün.

Bu makro

  1. PowerPoint sunumu açın ve Visual Basic projesi getirmek için Alt + F11 tıklayın yükleme.
  2. sol bölmede projeyi sağ tıklatın ve Modül ekle:

enter image description here

  1. bu modüle de cevabım kodu yapıştırın.
  2. wb.Navigate "C:\..." yazan satırda bu, HTML dosyanızın doğru dosya yolunda bunu değiştirir. Bu vs.

tarayıcı Slayt modunda HTML sayfaları görüntülemek mümkün olmalıdır, bilgisayarınızda veya paylaşılan ağ klasörüne olabilir, ama normal veya önizleme modunda onları işlemek olmaz.

+0

ile bir yol bulmak Katkılarınız için teşekkür ederiz. Bilmiyorum çünkü html hakkında bilgisizim ve sonra herhangi bir kelimeyi anlamıyorum :) –

+0

@ StéphaneLaurent bu HTML değildir, ama HTML'yi powerpoint slaydınıza yerleştiren bir makrodur. Sunumunuza bu makroyu nasıl ekleyeceğiniz konusunda biraz daha ayrıntılı bilgiler edeceğim ve sizin için çalışıp çalışmadığını görebileceğiz. –