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

54 次查看(过去 30 天)
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 个评论
Rik
Rik 2020-6-12
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 2020-6-13
Thank you A LOT Rik ! That was really helpfull as it allowed me to have a better understanding of the data !

请先登录,再进行评论。

采纳的回答

Sujay C Sharma
Sujay C Sharma 2020-6-12
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.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by