Create Chart with Two y-Axes

To create a chart with two y-axes in MATLAB, you can use the yyaxis function. This function allows you to plot two different y-axes on the same graph, making it easier to compare two datasets with different y-ranges. Here's an example to illustrate this:

Example:

matlab
% Generate sample data
x = linspace(0, 10, 100); % X values
y1 = sin(x);              % Data for the first y-axis
y2 = cos(x).^2;           % Data for the second y-axis

% Create a figure
figure;

% Plot data for the left y-axis
yyaxis left;
plot(x, y1, 'b-', 'LineWidth', 2);
ylabel('Sin(x)'); % Label for the left y-axis

% Plot data for the right y-axis
yyaxis right;
plot(x, y2, 'r--', 'LineWidth', 2);
ylabel('Cos^2(x)'); % Label for the right y-axis

% Customize the plot
xlabel('X-Axis');
title('Chart with Two Y-Axes');
legend('Sin(x)', 'Cos^2(x)');

% Add grid for better visualization
grid on;

Explanation:

  • Generate Sample Data: Create the x, y1, and y2 data points.

  • Create a Figure: Use the figure function to create a new figure window.

  • Plot Data for the Left Y-Axis: Use yyaxis left to set the left y-axis as the active axis and plot the first dataset.

  • Plot Data for the Right Y-Axis: Use yyaxis right to set the right y-axis as the active axis and plot the second dataset.

  • Customize the Plot: Add labels for both y-axes, an x-axis label, a title, and a legend.

  • Add Grid: Use grid on to add a grid to the plot for better visualization.

This code will create a chart with two y-axes, allowing you to compare two datasets with different y-ranges in a single plot.