2012-12-06 6 views
4

이것은 다소 이상한 질문이지만, 어쨌든. 때로는 물건을 확인하기 위해 서버 나 실험실 컴퓨터에 ssh를 사용하고 있습니다. 최신 데이터 등을 조사하기 위해 Matlab이나 Octave를 실행하기도합니다. 그런 다음, 어떤 종류의 줄거리가 필요할 때가 있습니다. 재미가 시작됩니다. 인터넷을 통해 큰 쓰레기를 내 컴퓨터에 복사하고 로컬로 음영을 생성하십시오. 또는 이전 시도가 옵션이 아니면 Matlab을 ssh 및 X-forwarding을 통해 실행합니다. 이는 낮은 대역폭 및/또는 높은 핑이있는 경우 고통 스럽습니다.Matlab/Octave가있는 문자 모드 (쉘) 플롯?

실은, 1980 년대와 같은 구식의 문자 플롯, 셸 (X-forwarding이없는)에서 선이나 점이있는 간단한 물건을 생성하는 방법이 있는지 궁금합니다. "못생긴"(그러나 차가운?) 문자 - 모드 음모를 가짐으로써 적어도 내가보기에 있는지 여부를 결정할 수있었습니다. 포물선 또는 평범한 쓰레기 - 엄청나게 도움이 될 수 있습니다. 나도 알아, 일부 재료는 영리한 수학에 의해 결정될 수 있지만, 이봐, 추상적 인 사고가 과대 평가됩니다.

편집 ... 다른 관련 (?) 태그.

+0

"추상적 사고가 과대 평가되었습니다."...... 좋아요. 거기에 가지 마세요 :) –

답변

5

옥타브의 경우에는 아무런 문제가 없습니다. 나는 보통 ssh를 통해 원격 컴퓨터에서 계산을하고 항상 사용한다.

gnuplot을 그래픽 툴킷으로 사용하는 한 (향후 참조를 위해 3.6.2에서 여전히 기본값이지만 fltk로 변경 될 수 있음) X 표시가 없으면 ASCII 플롯이 표시됩니다 .

ASCII plot of cos and sin functions with labels

방금 ​​프롬프트에서 graphics_toolkit을 입력 올바른 그래픽 툴킷을 확인하십시오. gnuplot으로 변경하려면 graphics_toolkit gnuplot을 사용하십시오.

+0

이런 종류의 경우를 해결한다. 그것은 예쁘지 않습니다, 전에는 훨씬 더 나은 아스키 아트를 보았지만 일을합니다. gnuplot에서이 기능에 대한 문서는별로 없습니다. 예 : 색깔이있는 선은 굉장 할 것이다. –

+0

@ernestopheles이 기능을 검색 할 때 터미널 유형 이름이 "멍청하다"는 것을 아는 것이 유용 할 수 있습니다. 색깔이있는 선은 실제로 매우 멋지다. 아마 당신은 그들에게 패치를 제출할 수 있었다. 지금은 다른 캐릭터 만 생각합니다. – carandraug

+0

예, "바보"에 대해 알아 냈습니다. 몇 가지 gnuplot pdf 문서에서 찾으려면 시간이 걸립니다. 음, "벙어리"가 존재한다는 것입니다 - 그것이 바로 그 것입니다. –

2

plot 명령 (및 친구들)은 자바 그래픽 라이브러리를 사용합니다. 이는 텍스트 전용 모드에서는 분명히 작동하지 않습니다. AFAIK, 이러한 기본 라이브러리 호출을 우회하여 그래픽 출력을 일부 ASCII 아트 번역기/생성기로 리디렉션 할 수있는 방법은 없습니다.

당신은 제안 here과 비슷한 무언가를 시도 할 수 있습니다 :

h = figure('visible', 'off'); 
plot(h, ...)    
saveas(gcf, 'file.fig') 

다음 scp/rsync (정말 좀 X 감기처럼 ...)를 통해 file.fig.

플롯을 생성하고 임시 파일에 저장 한 다음 (위와 같이) ASCII-art generator (또는 this one)을 통해 해당 PNG/JPG/...를 전달하는 함수를 작성할 수 있습니다. 그 결과는 다음과 같습니다. 터미널에 표시됩니다.

+0

그래, 좋은 해결책이야. 나는 파일을 복사 할 필요없이 쉘에 "머무를 수 있는지"궁금합니다. –

+0

Java ... 네, 질문에 1853259 그들은 실제로 전체 인터페이스를 전달하지 않고 x-forwarding을 사용합니다. –

+0

@ernestopheles : 내 편집을 참조하십시오. 그래도 약간의 작업이 필요하며 품질에 대한 확신이 없습니다. 좋은 아이디어. 나는 시간이있을 때 나는이 머리 위로 머리를 부러 뜨릴 것이다. –