diff options
Diffstat (limited to 'Kod/bilbana/Graph')
| -rw-r--r-- | Kod/bilbana/Graph/graphs_test.m | 22 | ||||
| -rw-r--r-- | Kod/bilbana/Graph/lap_time_graph.m | 6 | ||||
| -rw-r--r-- | Kod/bilbana/Graph/segment_time_graph.m | 39 |
3 files changed, 50 insertions, 17 deletions
diff --git a/Kod/bilbana/Graph/graphs_test.m b/Kod/bilbana/Graph/graphs_test.m index 3a2a2e5..955aeee 100644 --- a/Kod/bilbana/Graph/graphs_test.m +++ b/Kod/bilbana/Graph/graphs_test.m @@ -1,11 +1,19 @@ +%{ %% Data needed -car1.seg_times = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.4,1.4; - 4.2,1.1,2.2,1.8,1.4,3.4,1.5,3.4,1.4; - 3.2,1.1,2.2,1.8,1.4,3.2,1.5,3.4,1.4; - 4.0,1.4,2.2,1.8,1.4,3.4,1.5,3.4,1.4; - 4.0,1.1,2.2,1.8,1.4,3.6,1.5,3.4,1.4; - 4.1,1.1,2.2,1.8,1.4,3.8,1.5,3.4,1.4]; +A = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.4,1.4; + 4.2,1.1,2.2,1.8,1.4,3.4,1.5,3.4,1.4; + 3.2,1.1,2.2,1.8,1.4,3.2,1.5,3.4,1.4; + 4.0,1.1,2.2,1.8,1.4,3.6,1.5,3.4,1.4; + 4.1,1.1,2.2,1.8,1.4,3.8, 0, 0, 0]; +B = [3.9,1.1,2.2,1.8,1.4,3.9, 0, 0, 0]; +C = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.1,1.0; + 4.1,1.1,2.2,1.8,1.4,3.4, 0, 0, 0]; +car1.seg_times = C; car1.lap_times = [14.1,13.8,14.15,13.9,14.1,14]; ref_lap_time = 14; %% Actual test -graphs(car1.lap_times,ref_lap_time,car1.seg_times,1)
\ No newline at end of file +graphs(car1.lap_times,ref_lap_time,car1.seg_times,5) +%} +position = 2.54; +segment = 2; +detect_missed(position,segment,1)
\ No newline at end of file diff --git a/Kod/bilbana/Graph/lap_time_graph.m b/Kod/bilbana/Graph/lap_time_graph.m index 8d54c6a..c21a0c5 100644 --- a/Kod/bilbana/Graph/lap_time_graph.m +++ b/Kod/bilbana/Graph/lap_time_graph.m @@ -40,13 +40,13 @@ hold off %% Standardavvkielse sigma = std(lap_times); sigma = round(sigma, 2); -sig_str = string(sigma); +sig_str = num2str(sigma); %% Text xlabel('Varv'); ylabel('Tid [s]'); -Tit = join(['Varvtider bana',string(track)]); +Tit = ['Varvtider bana ' num2str(track)]; title(Tit); -txt = join(['Standardavvikelse:',sig_str, 's/varv']); +txt = ['Standardavvikelse: ' sig_str ' s/varv']; annotation('textbox',[.1 0.5 .5 .05],'String',txt,'EdgeColor','none') end diff --git a/Kod/bilbana/Graph/segment_time_graph.m b/Kod/bilbana/Graph/segment_time_graph.m index 602938b..c32281a 100644 --- a/Kod/bilbana/Graph/segment_time_graph.m +++ b/Kod/bilbana/Graph/segment_time_graph.m @@ -1,15 +1,40 @@ -function [] = segment_time_graph(seg_time, track) -%SEGMENT_TIME_GRAPH Snittid för varje segment. -seg_time_size = size(seg_time); -avr_seg_time = mean(seg_time(1:(seg_time_size(1) - 1), 1:(seg_time_size(2)))); -subplot(20, 1, 13:20); +function [] = segment_time_graph(seg_times, track) +%SEGMENT_TIME_GRAPH Stapeldiagram med snittid för varje segment. + %{ + Utgår ifrån en r*k matris (seg_times). I den finns segmenttider lagrade + enligt rad ~ varv och kollonn ~ segment. Funktionen summerar alla + kollonner och delar summan med antalet kolloner som inte har värdet 0. + Sedan ritas ett stapeldiagram där varje stapel motsvarar en kollon i + den nyligen beräknade 1*k matrisen. + %} +seg_time_size = size(seg_times); +divide_by_n = ones(1,seg_time_size(2)); +%% Summera seg_time om seg_time ~= 0 +for r = 1:seg_time_size(1) + if r == 1 + avr_seg_time(1,1:seg_time_size(2)) = seg_times(1,1:seg_time_size(2)); + else + for c = 1:seg_time_size(2) + x = seg_times(r,c); + if x ~= 0 + avr_seg_time(c) = avr_seg_time(c) + seg_times(r,c); + divide_by_n(c) = divide_by_n(c) + 1; + end + end + end +end +%% Ta medel av summan +for c =1:seg_time_size(2) + avr_seg_time(c) = avr_seg_time(c)/divide_by_n(c); +end +%% Rita +subplot(20, 1, 13:20); Plot = bar(avr_seg_time); -%Plot.Marker = 'o'; Plot.FaceColor = 'k'; xlabel('Segment'); ylabel('Tid [s]'); -tit = join(['Medeltid/segment bana',string(track)]); +tit = ['Medeltid/segment bana ' num2str(track)]; title(tit); end |
