2012-06-13 10 views
5

Próbuję zautomatyzować wstawianie obrazów JPEG do programu Powerpoint. Mam już zrobione makro, chyba że użycie R będzie nieskończenie lepsze dla moich celów.R2PPT ulega zawieszeniu R; czy istnieją alternatywy dla R2PPT?

Pakiet R2PPT powinien to zrobić, rozumiem. Jednak nie mogę z niego korzystać. Na przykład, gdy próbuję użyć PPT.Open, rozumiem, że mogę zrobić to na dwa różne sposoby, dzwoniąc pod numer method = "rcom" lub method = "RDCOMClient". Korzystając z tego ostatniego, R zawsze zawiesza się, wysyłając raport o błędach do systemu Windows. Korzystając z pierwszego, mówi mi, że muszę zainstalować statconnDCOM, przed podaniem błędu:

Error in PPT.Open(x) : attempt to apply non-function.

Nie mogę swobodnie zainstalować statconnDCOM, ponieważ nie nazwałbym tej pracy niekomercyjną. Więc jeśli nie ma sposobu na obejście tego problemu, czy istnieją przynajmniej niektóre darmowe alternatywy dla R2PPT, dzięki czemu mogę zaoszczędzić kilka godzin ręcznej pracy z prostym kodem R? Jeśli istnieje sposób, aby używać R2PPT, byłoby to idealne.

Dzięki!

Edytuj: Używam wersji 2.15 R i pobieram najnowszą wersję R2PPT. Powerpoint to 2007.

+0

Czy próbowałeś połączyć się z innymi produktami MS $, np. Word lub Excel? Jeśli to zadziała, napisanie makra łączącego dwa produkty MS $ może być łatwiejsze ...chociaż z pewnością czuję się jak zespół pomocy – Chase

+0

Napisałem makro dla programu Powerpoint, które umieści pliki JPEG tak, jak chcę. Wolałbym jednak unikać makr, ponieważ całe nasze programowanie jest w R. Najłatwiej byłoby po prostu zachować wszystko w R. – Stephen

+0

Numery wersji oprogramowania dla tego rodzaju pytania są niezbędne. –

Odpowiedz

4

Czy posiadasz uprawnienia administracyjne na tym komputerze? Występuje problem z pakietem RDCOMClient. Potrzebuje uprawnień do zapisu pliku rdcom.err w katalogu głównym dysku C :. Jeśli nie masz uprawnień do zapisu w C :, jest raczej kłopotliwe obejście:

  1. Close R
  2. Tworzenie "c: \ temp" folder, jeśli nie istnieje.
  3. Znajdź na dysku twardym plik rdcomclient.dll. Zwykle umieszczany jest w \ R \ library \ RDCOMClient \ libs \ i386 \ oraz w \ R \ library \ RDCOMClient \ libs \ x64 \ (musisz załatać plik odpowiadający wersji Windows - 32-bitowej lub 64-bitowej). Zaleca się wykonanie kopii zapasowej tych plików przed ich łataniem.
  4. Otwórz program rdcomclient.dll w edytorze tekstu (Notepad ++, na przykład -http: //notepad-plus-plus.org/)
  5. Znajdź w pliku ciąg c: \ rdcom.err - występuje tylko raz.
  6. Przejdź do trybu nadpisywania (zwykle poprzez naciśnięcie klawisza "Ins"). Bardzo ważne jest, aby nowa ścieżka miała taką samą liczbę znaków jak oryginalna. Wpisz C: \ temp \ e.rr zamiast c: \ rdcom.err
  7. Zapisz plik.

Teraz wszystko powinno działać poprawnie.

+0

Idealny, który działał idealnie. Dziękuję bardzo. – Stephen

1

Prawdopodobnie nie jest to odpowiedź, ale czy używałeś Sweave/knitr do renderowania prezentacji w LaTeX używając czegoś takiego jak Beamer? (Jak omówiono na slajdzie 17 here.)

Nie pomogłoby w przeniesieniu JPG do programu PowerPoint, ale z pewnością znacznie ułatwiłoby wstawianie wyników R (numerycznych lub graficznych) do prezentacji!

Edycja: jeśli chcesz użyć polecenia knitr (co polecam), here's innego odniesienia.

+0

Dzięki za sugestię, ale niestety jest to bardzo ścisłe o byciu prezentacją PowerPoint. – Stephen

Powiązane problemy