matlab 条形图并排绘制,并带有两个y轴

vhmi4jdf  于 2022-11-15  发布在  Matlab
关注(0)|答案(1)|浏览(211)

我有这个脚本来获得与酒吧的次要情节,但我宁愿酒吧是并排的,并与两个y轴。我能做些什么?在这种情况下,我把栏杆一个一个地放在另一个上面。结果如下图所示。

% Create figure
figure1 = figure('NumberTitle','off','Name','Figure','Color',[1 1 1]);
%bar plot e scatter 2011
subplot1=subplot(3,2,1,'Parent',figure1)
x1 = (1:5)';
y1 = tweetsvsnewsS3.somma_1_2;
y2 = tweetsvsnewsS3.tweets_1;
yyaxis left
p1 = bar(x1,y1, 'BarWidth', 0.25);
p1(1).FaceColor = [0.56 0.10 0.74]; 
yyaxis right
p12=bar(x1,y2,'BarWidth', 0.25)
p12(1).FaceColor = [0.41 0.28 0.79]; 
box(subplot1,'on');
hold(subplot1,'off');
set(subplot1,'XGrid','on','XMinorGrid','on','XMinorTick','on','YGrid','on',...
    'YMinorGrid','on','YMinorTick','on');
set(gca,'xtick',1:12,...
 'xticklabel',{'Nov 24','Nov 25','Nov 26','Nov 27','Nov 28'})
ylabel('count');
title('Data','FontSize',12)

我也尝试了这个脚本,但我没有第二个y轴。在数字中有结果。

% Create figure
figure1 = figure('NumberTitle','off','Name','Figure','Color',[1 1 1]);
%bar plot e scatter 2011
subplot1=subplot(3,2,1,'Parent',figure1)
x1 = (1:5)';
y1 = tweetsvsnewsS3.somma_1_2;
y2 = tweetsvsnewsS3.tweets_1;
p1 = bar(x1,[y1,y2],'BarWidth', 0.80);
p1(1).FaceColor = [0.56 0.10 0.74]; 
p1(2).FaceColor = [0.41 0.28 0.79]; 
box(subplot1,'on');
hold(subplot1,'off');
set(subplot1,'XGrid','on','XMinorGrid','on','XMinorTick','on','YGrid','on',...
    'YMinorGrid','on','YMinorTick','on');
set(gca,'xtick',1:12,...
 'xticklabel',{'Nov 24','Nov 25','Nov 26','Nov 27','Nov 28'})
ylabel('count');
title('Data','FontSize',12)

igetnqfo

igetnqfo1#

你的第一个剧本是正确的。如果您在每个数据集中设置为空数据,则可以并排绘制条形图,以便我们可以看到后面的数据。请注意,您还必须将脸部颜色设置在数据集中的正确位置。

[...]
yyaxis left
p1 = bar(x1,[y1 zeros(size(y1))]);
p1(1).FaceColor = [0.56 0.10 0.74]; 
yyaxis right
p12=bar(x1,[zeros(size(y2)) y2]);
p12(2).FaceColor = [0.41 0.28 0.79];
[...]

相关问题