How to get a scatterhistogram in an UIAxes (e.g. Matlab App)?

조회 수: 4 (최근 30일)
Gernot Reichl
Gernot Reichl 2024년 1월 25일
댓글: Gernot Reichl 2024년 1월 25일
a = [1 2 3 4];
b = [1 2 3 4];
scatterhist(a,b) %works fine sofar
% I would like to display the scatterhist in an uiaxes as for example with
% a boxplot
myAxes = uiaxes;
boxplot(myAxes,a,1)
Unfortunately scatterhist does not support the axes graphics object.
Are there possibilities to fix that?
thank you very much
kind regards

채택된 답변

Adam Danz
Adam Danz 2024년 1월 25일
편집: Adam Danz 2024년 1월 25일
Scatterhistogram creates a figure with 3 axes. You can expecify where those 3 axes should be using the optional parent argument: scatterhistogram(parent,___) where parent can be a figure, panel, tab object, tiledchartlayout, or gridlayout.
Within your app figure, add a uipanel or one of the other supported objects. Then specify that object in the first argument of scatterhistogram.
Here's a demo that creates a figure instead of an app.
load patients
tbl = table(LastName,Age,Gender,Height,Weight);
fig = figure('Color',[.8 .8 .8]);
uip = uipanel(fig, 'Units','normalized','position', [.3 .3 .6 .6]);
s = scatterhistogram(uip,tbl,'Height','Weight');
If you prefer to use scatterhist, you can use the same workflow except that the parent argument is specified as name-value pair.
load fisheriris
x = meas(:,1);
y = meas(:,2);
fig = figure('Color',[.8 .8 .8]);
uip = uipanel(fig, 'Units','normalized','position', [.3 .3 .6 .6]);
s = scatterhist(x,y,'Parent',uip);
  댓글 수: 1
Gernot Reichl
Gernot Reichl 2024년 1월 25일
Thank you very much Mr. Danz. Works great.
I appreciate your fast and professional support! :)
disp('Thank YOU!')
Thank YOU!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by