datetick을 이용한 x축의 날짜 간격 조절 clc; clear; close all; a = '2022 10 01'; b = '2022 11 01'; format = 'yyyy mm dd'; anum = datenum(a,format); bnum = datenum(b,format); y = 1:31; x = linspace(anum,bnum,31); plot(x,y) xticks([x(1:3:end)]) % matlab 2022.12.10
2자리 숫자 [ex)'01'] 형식의 텍스트 작성 ex) a = [1,2]; for ii = 1:length(a) fprintf(['loading ',num2str(a(ii),'%.02d'),'...\n']) end loading 01... loading 02... matlab 2022.11.02
여러 개의 사진 파일을 연속적인 동영상 제작 -순서- 1. 이미지가 저장된 폴더 및 파일 형식 설정 * 이미지들의 파일명은 프레임 순서에 따라 정렬 되어있어야 함. 2. 저장 경로, 파일명 설정 2_1. 프레임 설정 3. 파일 open 4. 이미지 불러오기 4_1. 비디오 파일에 작성 5. 파일 close -코드- inp.in = '02_output'; inp.out = '03_movie'; if isfolder(inp.out) == 0 mkdir(inp.out) end % .png 형식 파일 불러오기 f.list = dir([inp.in,'/*.png']); f.name = char(f.list.name); % 저장경로, 폴더이름, 파일정식 설정 v = VideoWriter(fullfile(inp.out,'movie.avi'),'Uncompres.. matlab 2022.09.28
수평/수직 직선 그리기 원하는 가로선 또는 세로선 그리기 % format xline(num,'color','LineWidth',2) % 세로선 xline(0,'r','LineWidth',2) % 가로선 yline(0,'r','LineWidth',2) matlab 2022.08.30
지정한 변수를 제외한 나머지 변수 제거 % variable list : var1, var2, var3 clearvars -except var1 var2 % variable list : var1, var2 matlab 2022.08.04
cell형 배열로 이루어진 숫자형 텍스트 double형식 변환(2) % 셀형 배열 생성 >> a={'1','2','3'} a = 1×3 cell 배열 {'1'} {'2'} {'3'} % 지정한 텍스트 형태로 저장 >> S = sprintf('%s*', a{:}) S = '1*2*3*' % 지정된 형태의 문자열 읽기 >> N = sscanf(S, '%f*') N = 1 2 3 이 방법은 2열 또는 2행 이상으로 이루어진 경우 모든 값이 1열에 저장되기 때문에 1열 또는 1행으로 이루어진 배열에 사용하는 것이 좋다. matlab 2022.08.03
문자열로 명령어 조합 % strcat: 문자열을 가로로 결합 for ii = 1:10 % aa = strcat("load([input,'/',fname(",num2str(ii),",:)]);"); % eval: 표현식 실행 eval(aa) end 이 방법을 쓰면 변수에 숫자 텍스트를 넣어야 하는 경우에 유용하다. matlab 2022.08.02
cell형 배열로 이루어진 숫자형 텍스트 double형식 변환 a = {'1','2','3','4','5'}; a = 1×5 cell 배열 {'1'} {'2'} {'3'} {'4'} {'5'} b = cellfun(@str2num,a); b = 1 2 3 4 5 * 이 방법을 쓰면 for 문없이 쓰기 때문에 실행시간을 단축 할 수 있다. matlab 2022.08.02
[matlab] 시계열 데이터 처리 수정 : 2023-06-05 목표 timetable 활용하여 데이터 월평균 처리 과정 1. 데이터 불러오기 (바다누리 해양정보 서비스 : 1시간 간격 조위 데이터) + 전처리 data = importdata("01_data\강화대교_2022년_1시간 조위.txt",' ',5); tp.time={}; for ii = 1:length(data.textdata) if length(data.textdata{ii,:}) == 16 tp.time(end+1,1) = data.textdata(ii,:); end end 2. struct형태로 변수 저장 timetabel 변환을 위해 시간데이터는 datetime 형식으로 저장 d1.time = datetime(tp.time,'Format','yyyy/MM/dd HH:m.. matlab 2022.08.02