Jonas, :
%
foregroundColor = 'k';
backgroundColor = 'r';
foregroundWidth = 0.3;
backgroundWidth = 0.9;
%
graph = [2 3 5 4 9 1 7];
color = [0 2 2 1 0 1 2];
x = 0:length(graph)-1;
colIdx = color>1;
bgBarHeight = max(graph)+1; %
%
b1 = bar(x,graph,foregroundWidth,'FaceColor',foregroundColor);
hold on
%
%
b2 = bar(x,colIdx*bgBarHeight,backgroundWidth,'FaceColor',backgroundColor,'EdgeColor','none');
hold off
%
pch = get(b2,'child'); %
set(pch,'FaceAlpha',0.3); %
xlabel('X Axis')
ylabel('Y Axis')