how to plot or put the function ( wvtool ) in my gui axis1

Illustration
Abdul-halim-bin-haron - 2021-02-11T10:17:09+00:00
Question: how to plot or put the function ( wvtool ) in my gui axis1

please i would like to know how to put that function ( wvtool ) in my GUI interface as example i will put this code in any pushbottom and will show it in my GUI axis1 ?? L = 64; wvtool(hamming(L))

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

To display the output of the wvtool function within a GUI axis in MATLAB, you'll need to use the axes function to redirect the output of the plot into the GUI's axes component. However, the wvtool function creates a separate figure by default, so you need to extract its content and embed it into your GUI.

Below is an example of how you can achieve this:

Steps to Embed wvtool in GUI's axes

  1. Create your GUI using the App Designer or GUIDE (or manually using code).
  2. Use the copyobj function to copy the content of the wvtool figure into your GUI's axes.

Code Example

Here’s how you can adapt the wvtool output for a GUI with an axes named axes1:

 

function pushbutton1_Callback(hObject, eventdata, handles)
    % Example filter
    L = 64;
    window = hamming(L);

    % Create the wvtool figure
    wvFig = wvtool(window);
    
    % Get the handle to the current axes in the wvtool figure
    ax = findall(wvFig, 'type', 'axes');

    % Copy the axes content to the GUI axes (axes1)
    copyobj(ax, handles.axes1);

    % Adjust GUI axes properties for better visualization
    set(handles.axes1, 'XColor', 'k', 'YColor', 'k', 'Box', 'on');
    
    % Close the wvtool figure
    close(wvFig);
end

Explanation

  1. wvtool:

    • Creates a figure with the visualization of the filter's characteristics.
  2. findall(wvFig, 'type', 'axes'):

    • Locates the axes object in the wvtool figure.
  3. copyobj:

    • Copies the content of the wvtool axes into the GUI's axes1.
  4. set:

    • Adjusts the GUI's axes properties to ensure a clean display.
  5. close(wvFig):

    • Closes the wvtool figure to avoid clutter.

Integrating with GUI

  • Place the above code inside the pushbutton callback or any other trigger in your GUI.
  • Ensure the axes1 handle corresponds to the name of your GUI’s axes.

Let me know if you need more guidance!


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!