How can I combine a line plot and a bar graph into one figure?

56 views (last 30 days)
Hello everyone, I have a data set of shares returns and shares turnover for a set of dates and for different shares that I was able to divide into subgroups that I need to plot as follow with the dates represented in the X axis and two Y axis for the following graphed data:
  • The shares returns as a line plot
  • The shares turnover as a bar plot
To do so, I created the given function:
function myplot(abtur,abret,date)
figure;
hold on
plot(date,abret);
hold on
bar(date,abtur);
hold off
end
And I use it as follow:
Work = readtable('Data Plotting.xlsx');
Work.Groups = findgroups(Work.Numero);
splitapply(@myplot,Work.AbnormalTurnover,Work.MarketAdjustedModel,Work.Date,Work.Groups);
However, It seems like my formula doesn't work as it provides me with the graph I did insert, can anyone please help me solve this matter?
Thank you a lot !
  4 Comments
Rik
Rik on 12 Jun 2020
You should convert your date to an actual date format, either datetime or datenum. That should already help. Looking at the raw data you can also notice the adjusted data is fairly small compared to the other dataset.
If you want more explicit help, put your data in a mat file and attach it.
Nabil Benhadda
Nabil Benhadda on 13 Jun 2020
Thank you A LOT Rik ! That was really helpfull as it allowed me to have a better understanding of the data !

Sign in to comment.

Accepted Answer

Sujay C Sharma
Sujay C Sharma on 12 Jun 2020
Hi,
Have a look at the following Matlab example. From my understanding of your question, the yyaxis function should be able to do exactly what you are looking for when it is used with the bar and the plot functions as shown in the example.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!