how to select an axis using mouse click?

조회 수: 5 (최근 30일)
Aru hazari
Aru hazari 2015년 4월 14일
댓글: Steven Zhu 2022년 9월 22일
I have 2 axes in the gui figure window. I want to plot the data on the selected axis. The selection is to be done with a mouse click. How do i do it? please help.

답변 (2개)

Adam
Adam 2015년 4월 14일
편집: Adam 2015년 4월 15일
Axes have a
ButtonDownFcn
property. Just define a callback in each of your axes that allows you to identify which was selected. Probably you could use the same callback for both as the src (first argument to the callback) should allow you to identify the axes by comparing it with the two axes handles.

Jan
Jan 2015년 4월 14일
If you click on an axis, is is made the current axes object automatically. But this might be confusing for the user, because this action does not change anything on the screen. So following the ButtonDownFcn advice of Adam is a good idea.
  댓글 수: 3
Adam
Adam 2015년 4월 15일
You can use the
WindowButtonDownFcn
of the figure itself, but then you have to manually work with the position coordinates and compare them to the 'Position' property of your axes.
Alternatively you could use a callback on whatever object is on your axes (and retrieve its parent), but that may not be an appropriate solution depending what is plotted, how often it changes, etc, etc.
Alternatively you could just use a radio button to choose axes instead of clicking on them. Or a toggle button.
Steven Zhu
Steven Zhu 2022년 9월 22일
Hi Jan,
Yes, your are right. I'm confusing about current axes object changed automatically by clicking it accidentally.
Do you know any way to turn it off? Thanks!

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

카테고리

Help CenterFile Exchange에서 Data Exploration에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by