2016-07-15 3 views
0

Мне нужно построить некоторые траектории с помощью matlab, у меня есть координаты каждой точки в файле .txt, я работаю с C++. Я хочу построить эти траектории с помощью Matlab, чтобы сделать некоторые сравнения, это пример файла, который содержит координаты:Импорт координат из файла .txt с Matlab

515 // this is x 
317 // this is y 
0  // i dont want to import this variable 
511 // this is x 
328  // this is y 
20 // i dont want to import this variable 
508 
353 
40 
511 
... etc 

есть функция в Matlab, который может помочь мне импортировать только х и у?

файл:

172 
489 
54460 
283 
469 
54480 
388 
428 
54500 
476 
384 
54520 
555 
350 
54540 
635 
325 
54560 
700 
286 
54580 
760 
250 
54600 
811 
222 
54620 
840 
192 
54640 
856 
171 
54660 
871 
175 
54680 
890 
181 
54700 
930 
170 
54720 
979 
168 
54740 

ответ

2

Вы можете прочитать во всех значений с помощью textscan и просто игнорировать каждое третье значение на выходе с помощью * в спецификатора формата.

fid = fopen('filename.txt', 'r'); 

data = textscan(fid, '%d\n%d\n%*d\n'); 
[x,y] = data{:}; 

fclose(fid); 

Другой вариант, чтобы прочитать в всех данных, а затем изменить форму и захватить детали, вы заботитесь о.

fid = fopen('filename.txt', 'r'); 

data = textscan(fid, '%d'); 
data = reshape(data{1}, 3, []); 
x = data(1,:); 
y = data(2,:); 

fclose(fid); 
+0

своей работы только на первую линию, на вторую линию он импортировать [] –

+1

@ all.west вы можете вставить ваш фактический файл в вопрос (без комментариев). Также есть целые числа чисел? – Suever

+0

все делается. да все числа - целые числа. –

Смежные вопросы