Change Line width and Line color in findchangepts function.
    3 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
I have a dataset, attached, and I am using findchangepts function to partition the data in different number of regions. I wish to control the line widht and other properties of the graph like Line style and color but I am not able to do so. Can anyone please help me with this? Thanking you in advance. My data looks like this. 

Risposta accettata
  Voss
      
      
 il 13 Nov 2024
        
      Modificato: Voss
      
      
 il 13 Nov 2024
  
      As I interpret the question, you want to plot the data in different regions with different line properties. If that's the case, try something like this:
ACc = readmatrix('AC_1Hzcsv.csv');
idx = findchangepts(ACc(:,2),'Statistic','mean','MaxNumChanges',3)
figure
ylim([0 1])
hold on
line_widths = [2, 3, 1, 2];
line_styles = {'-', '--', ':', '-.'};
line_colors = 'rgbk';
N = size(ACc,1);
x = (1:N)/5; % /5 to match your x-scale?
idx = [1; idx; N]
for ii = 1:numel(idx)-1
    tmp = idx(ii):idx(ii+1);
    plot(x(tmp),ACc(tmp,2), ...
        'LineWidth',line_widths(ii), ...
        'LineStyle',line_styles{ii}, ...
        'Color',line_colors(ii));
end
Più risposte (1)
  Walter Roberson
      
      
 il 13 Nov 2024
        After you 
findchangepts(ACc(:,2),'Statistic','mean','MaxNumChanges',2);
then do
ax = gca;
%if you want to affect the line holding the original data
ax.Children(2).LineWidth = APPROPRIATE_LINE_WIDTH;
ax.Children(2).LineStyle = APPROPRIATE_LINE_STYLE;
ax.Children(2).Color = APPROPRIATE_COLOR;
%if you want to affect the lines showing the breaks in regions
ax.Children(1).LineWidth = APPROPRIATE_LINE_WIDTH;
ax.Children(1).LineStyle = APPROPRIATE_LINE_STYLE;
ax.Children(1).Color = APPROPRIATE_COLOR;
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



