2015-02-05 1 views
1

XY 좌표가 포함 된 행렬 vtx이 있는데, 이미 존재하는 파일에 일부 사용자 정의 헤더를 쓰고 싶습니다.아스키 파일에 초기 탭이없는 행렬을 저장하십시오.

행을 save('z2.vtx','vtx','-ascii','-append');으로 사용하여 특정 파일에 행렬을 저장합니다. 문제는 각 행에 초기 탭이 없기를 바란다는 것입니다. 대신 출력의

:

#Some headers 
    6.229968e+00 -5.000000e-01 

나는

#Some headers 
6.229968e+00 -5.000000e-01 

이이 save 또는 dlmwrite 해결할 아니면 제가 루프를 수행하고, 사용자 지정 형식으로 fwrite를 사용해야 할 수 있습니다시겠습니까?

답변

3

dlmwrite을 사용하면 save과 같은 간단한 텍스트 파일을 작성할 수있는 옵션이 더 많습니다. 구분 기호 또는 행 및 열 오프셋의 정의. 당신이 dlmwrite'precision' 특성을 찾고 당신은 C-style format string를 정의하려면 :

dlmwrite('z2.vtx',vtx,'delimiter','\t','precision','%1.2e','-append'); 

의견에 대해서는.

예 : '%1.2e'은 항상 과학 표기법을 사용하여 도트와 한 자릿수 앞 한자리 숫자로 플로트를 제공합니다. 텍스트 파일에

출력 :

는 것은이
4.27e+01 8.85e+01 
9.55e+01 8.40e+01 
7.24e+01 1.18e+01 
5.81e+01 4.10e+01 
5.40e+01 1.20e+01 
7.05e+01 5.72e+01 
... 
+0

, dlmwrite 그냥 예를 들어, 쓰기, 내가 게시 된 형식으로 기록하지 않습니다 '3.45567e + 01' 대신'34.5567'을 사용합니다. 나는 그것을 바꿀 길을 찾지 못했습니다. –

+0

@AnderBiguri 제 편집을 한번보세요. 당신이 찾고있는 것 같아요. – thewaywewalk

+1

평소와 같이 환상적입니다. 고맙습니다. –

관련 문제