График бар Matlab сгруппирован, но в разных масштабах
У меня есть два набора данных, и я хочу построить график с помощью гистограммы. Но проблема в том, что эти два набора данных находятся в совсем другом масштабе. Если я просто использую bar(A)
, он будет выглядеть следующим образом: сгруппировано, но второй набор данных едва заметен, потому что масштаб.
Однако, если я использую plotyy(x,y1,x,y2)
, график будет таким: два набора данных имеют разный масштаб, но гистограммы не сгруппированы, а второй набор данных перекрывается с первым.
Итак, мне интересно, есть ли способ построить график, сгруппированный, как первая цифра, но два набора данных используют отдельные шкалы y? Или есть способ отрегулировать горизонтальное смещение гистограммы во втором графике, чтобы он выглядел как "сгруппированный".
Спасибо!
Здесь используется вариант plotyy(x1,y1,x2,y2,fun1,fun2)
plotyy
:
%// Set these three variables as desired
offset = (x(2)-x(1))/8;
width = (x(2)-x(1))/4;
colors = {'b','g'};
%// Do the plot
plotyy(x-offset,y1,x+offset,y2, @(x,y) bar(x,y,width,colors{1}), @(x,y) bar(x,y,width,colors{2}));
Если вы предпочитаете, чтобы x-ticks отображались только на используемых значениях x:
h = plotyy(x-offset,y1,x+offset,y2, @(x,y) bar(x,y,width,colors{1}), @(x,y) bar(x,y,width,colors{2}));
set(h,'xtick',x)
- Вопросы
- Matlab-figure
- График бар Matlab сгруппирован, но в разных масштабах