2014-05-16 5 views
2

원격 시스템에서 구문 분석하고 렌더링해야하는 방대한 파일이 있습니다. 이미 정확하게 이것을 수행하기 위해 mayavi를 사용하여 작성한 스크립트가 있습니다. 내가 뭘하고 싶은지 png로 이미지를 저장하고 다음 이미지를 복사하고 로컬로 볼 수 있습니다. 백엔드를 'Agg'로 설정하여 matplotlib를 사용하면 매우 간단합니다. 그러나 mayavi를 사용하여이 작업을 수행하는 데 심각한 문제가 있습니다. 여기 가이드mayavi 및 python을 사용하여 원격으로 플로팅

http://docs.enthought.com/mayavi/mayavi/tips.html

를 따라했지만 문제는 MLAB 혼자 가져 오는 것은 xdisplay에 접근이 필요하다는, 그래서 제안 심지어 가상 윈도우를 켤 수 없습니다.

이 재현 ssh를 통해 시스템에 액세스하고 같은 간단한 파이썬 스크립트를 실행하려면 :

#!/usr/bin/python 
from mayavi import mlab 

을 그리고 표준 함께 오류가 발생하지;

X 디스플레이에 액세스 할 수 없습니다. $ DISPLAY가 올바르게 설정되어 있습니까?

누구나이 문제를 해결하거나 3D 이미지를 원격으로 렌더링 할 수있는 대안이 있다면 고맙겠습니다. matplotlib에 의해 제공되는 3D 렌더링은 내가 필요로하는 것만으로는 충분하지 않기 때문에 mayavi에 대한 대안을 제안하기 위해 어떤 제안도 환영받을 것입니다.

+0

은 matplotlib와 관련이 없으므로 matplotlib 태그가 제거되었습니다. – tacaswell

+2

가상 프레임 버퍼에 대한 팁을 확인 했습니까? http://docs.enthought.com/mayavi/mayavi/tips.html#rendering-using-the-virtual-framebuffer – dpinte

답변

1

X 서버를 실행하는 * nix 플랫폼을 사용하는 경우 rendering using the virtual framebuffer 아래의 설명에서 dpinte로 설명한 솔루션을 사용하십시오. Mayavi 스크립트를 헤드리스로 실행하기 전에이 메소드를 성공적으로 사용했습니다.

기본적인 아이디어는 Xvfb와 같은 가상 X 서버를 시작한 다음 가상 X 서버의 디스플레이 컨텍스트에서 mayavi를 호출하는 것입니다. 그렇습니다.이 설명은 옳지는 않지만 충분합니다.

+0

OK 이것은 완전히 새로운 많은 실수를 만들어내는 것처럼 보이기 때문에 나는 그것에 전진하기를 주저했습니다. 나는 그 문제들이 새로운 질문의 원인이라고 생각한다. 도움을 주셔서 감사합니다. 단지 이것이 실제로 가능하다는 것을 알고 있으면 도움이됩니다. –

관련 문제