在matlab中创建一个堆积条形图

时间:2013-04-13 18:53:49

标签: matlab plot bar-chart stackedbarseries

您好我正在尝试在matlab中创建堆积条形图,但输出图似乎是将第一个数据集(AD_monthly_generation_250)添加到第二个数据集(CC_monthly_demand_2012)。我怎么能避免这个?

我的代码是

%% AD STACKED CC %%

AD_monthly_generation_250 = [186 186 186 186 186 186 186 186 186 186 186 186]';
CC_monthly_demand_2012 = [199.575 206.701 145.284 135.944 127.689 93.281 80.311 78.859 98.145 168.572 206.365 113.030]';


% Create a stacked bar chart using the bar function
figure;
bar(1:12, [ AD_monthly_generation_250 CC_monthly_demand_2012 ], 0.5, 'stack');


% Add title and axis labels
title('Seasonal Anaerobic Digestion (250kWe) Supply to Demand - 2012','FontSize',22);
 set(gca,'XTickLabel',{'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug',' Sep',     'Oct', 'Nov',' Dec'},'FontSize',18)
 ylabel('Energy (MWh)');

1 个答案:

答案 0 :(得分:1)

我认为'stack'选项可以正常运行...试试这段代码,也许这就是你想要的:

%% AD STACKED CC %%

AD_monthly_generation_250 = [186 186 186 186 186 186 186 186 186 186 186 186]';
CC_monthly_demand_2012 = [199.575 206.701 145.284 135.944 127.689 93.281 80.311 78.859 98.145 168.572 206.365 113.030]';

% Create a stacked bar chart using the bar function
figure;
% bar(1:12, [ AD_monthly_generation_250 CC_monthly_demand_2012 ], 0.5, 'stack');
bar(1:12, AD_monthly_generation_250, 0.5, 'b');
hold on;
bar(1:12, CC_monthly_demand_2012, 0.5, 'r');
hold off;

% Add title and axis labels
title('Seasonal Anaerobic Digestion (250kWe) Supply to Demand - 2012','FontSize',22);
 set(gca,'XTickLabel',{'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug',' Sep',     'Oct', 'Nov',' Dec'},'FontSize',18)
 ylabel('Energy (MWh)');