Effacer les filtres
Effacer les filtres

Stacked bar graph with secondary y-axis line graph

7 vues (au cours des 30 derniers jours)
Phoenix
Phoenix le 29 Juin 2019
Commenté : dpb le 29 Juin 2019
Hi,
I'm trying to achieve something like this from my excel file (attached) using MATLAB plot but I'm having a hard time. See below graph generated from excel and I wanted to regenerate it using MATLAB. Data is in excel sheet as well. Thank you.
Capture.JPG

Réponse acceptée

dpb
dpb le 29 Juin 2019
Modifié(e) : dpb le 29 Juin 2019
[~,~,r]=xlsread('MLQ.xlsx'); % just read the spreadsheet to see what was in it...
MLQopt=detectImportOptions('MLQ.xlsx'); % will need some help to skip over the first two lines for data
MLQ=readtable('MLQ.xlsx',MLQopt); % and read the data into table
MLQ.Properties.VariableNames=cellfun(@(s)strrep(s,' ','_'),r(2,1:7),'uni',0); % get rid of blanks for v names
hB=bar(MLQ.Hour,MLQ{:,[4 3 5 6]},'stacked'); % start with the bar plot
hold on % prepare to add LH axis line
hLL=plot(MLQ.Hour,MLQ.Load,'r-','LineWidth',3); % and do so...
yyaxis right % get ready to RH axis line
hLR=plot(MLQ.Hour,MLQ.BT_SOC,'k-','LineWidth',3); % and plot them, too...
xlim([0.5 20.5])
xticks(1:20)
is the starting point for final cleanup and labelling--
  4 commentaires
Phoenix
Phoenix le 29 Juin 2019
It worked. Thanks so much. :)
dpb
dpb le 29 Juin 2019
Oh. If you do set x axis parameters, remember both axes need same...or to be linked (and I don't know otomh if the new(ish) yyaxis does that automagically or not.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by