2013-06-21 10 views
5

VM (Red Hat Enterprise Linux 서버 릴리스 6.4)에서 R-shiny (R 버전 3.0.1 (2013-05-16))를 실행 중입니다. 모든 즉, 서버가 시작되고 응용 프로그램이 한 내가 그래프png를 표시 할 수 없음

renderPlot 

그때 메인 패널에 메시지가 표시에게 [오류 플롯하려고하지 않는 등 ... 실행, 작동합니다 시작할 수 없습니다 장치 png]. 내 전체 코드를 게시 할 것이지만이 문제는 내가 그림을 그리는 것과 관련이 있다고 생각하는데, renderText 을 사용하고 일부 데이터를 뱉어 내면 잘 작동합니다.

가 사실 난 그냥 (이 오류 [.External2 (C_X11에서 오류, 붙여 넣기를 얻을 RI에 PNG() 에 입력 할 때 "PNG :"파일 이름 9 월 = ""), g의 $ 폭, : 또한 장치 PNG 를 시작할 수 없습니다 : 경고 메시지 : PNG에서 () : 물론 앞으로 나는 나의 Mac으로의 ssh -X를 통한 경우를 ''X11 디스플레이 연결을 열 수 없습니다, 나는 를 입력 할 수 있습니다 png() 문제 및 플롯 데이터 등 ...

- 몇 가지주의 할 점이 있으면 capabilties()를 입력하면 거짓 인 유일한 것들은 jpeg, tiff, X11, 아쿠아 및 profmem입니다 (그래서 png와 카이로는 참입니다)

-libpng, cairo 및 libX11, libX11-devel, libXt, libXt-devel을 설치했습니다. 소스에서 R을 빌드하기 전에

나는 내 서버가 X 서버를 실행해야한다고 생각하고있다. 또한 DISPLAY 변수는 null입니다.

내 생각에 내 논리가 맞다고 가정하면 내 논리가 맞을 것 같아.

1) X 서버를 시작/구동해야합니까? (현재 어떤 이유로 시작한 후에 종료됩니다) DISPLAY 변수를 설정할 수 있습니까? 0.0 일을하지 않은) 내가 관련이있을 수 있습니다 이러한 질문에 누락 뭔가가 분명히 경우

: 난 그냥로 설정해야하는지 내 DISPLAY 변수를 설정할 수있는 경우 (로컬 호스트

2).

사전에 감사 드리며 번거롭게 미안합니다. 철저히 조사하고 싶었습니다. 당신이 option(bitmapType = 'cairo')을 설정하면

+0

은'DISPLAY' 변수는 작업 X 서버를 가리해야한다, 그렇지 않으면 거의 의미는 설정에있다. –

+1

올바른 방향으로 안내 할 수 있습니다. http://trestletechnology.net/2013/02/graphical-tools-rgl-on-a-headless-shiny-server/ –

답변

7

PJ가 도움이됩니까? R이 비트 맵 장치 유형을 .Call(C_cairoProps, 2L)grDevices:::.onLoad()에 사용하는 방법에 대해 회의적이었습니다 (버그 일 수는 있지만 확실히 말할 수는 없습니다).

cairo의 테스트 따라서 X11에 대해 당신에게 비밀 오류 메시지를주고, 실패하면 다시 Xlib에 떨어질 bitmapType 옵션. png()type 인수를 참고 :

> args(png) 
function (filename = "Rplot%03d.png", width = 480, height = 480, 
    units = "px", pointsize = 12, bg = "white", res = NA, ..., 
    type = c("cairo", "cairo-png", "Xlib", "quartz"), antialias) 

이 인수의 기본값은 getOption('bitmapType')이며, 귀하의 경우에 의한 grDevices:::.onLoad()에서 시험 Xlib입니다. cairo을 100 % 확신하는 경우 ~/.Rprofile에서이 옵션을 변경할 수 있습니다.

+0

안녕하세요. Yihui. 'server.R' 파일에'option (bitmapType = 'cairo')'을 설정 하시겠습니까? –

+0

@ StéphaneLaurent 네, 그렇게하는 것도 한 가지 방법입니다. 위의'~/.Rprofile'을 언급했는데, 이는 여러분의 모든 R 세션에 대해이 옵션을 전역 적으로 설정하는 것을 의미합니다. –

+0

'server.R' 파일에서'options (bitmapType = 'cairo')'을 시도했지만 아무 것도 바뀌지 않았습니다 . –

1

몇 가지 추가 개발 패키지를 설치하고 소스에서 R을 제거/다시 설치하여이 문제를 해결할 수있었습니다. 이 때까지는 다른 모든 권장 옵션이 작동하지 않았습니다. 디렉토리에

sudo yum install pango-devel pango libpng-devel 

이동은 소스 R 파일이 설치된 위치 :

make uninstall 
./configure --with-readline=no (or ./configure might work for you) 
make 
make install