plotyn(varargin)
plotyn Extends plot to create a separate Y-axis for each dataset. It is a generalization of Matlab's inbuilt function PLOTYY.
Creation mode, needs to be run first:
Syntax: [hax, hlines, data] = plot4y(data)
Syntax: [hax, hlines, data] = plot4y(data, pos)
Syntax: [hax, hlines, data] = plot4y(data, pos, parent)
Update mode, to be performed on existing axes to update their plots, colors or Y-axis labels:
Syntax: plot4y(hax, hlines, data)
Inputs:
data is a struct with at least two fields (X, Y). The dimensionality of data determines the number of graphs:
* data(1).X X coordinates of first dataset (Same for all)
* data(i).Y Y coordinates of i-th dataset
* data(i).Color Color of i-th dataset (Optional)
* data(i).YLabel Y-axis label of i-th dataset (Optional)
* pos Array of 5 numbers positioning the axes on the current figure (handle) in 'Pixel' units
* parent Handle onto which the axes are drawn
Outputs:
* hax Double array containing the axes' handles
* hlines Double array containing the lines' handles
* data Struct with the input data
Example:
x = 0 : 10; data(1).X = x;
data(1).Y = x .^ 1; data(1).YLabel = 'First Y-axis';
data(2).Y = x .^ 2; data(2).YLabel = 'Second Y-axis';
data(3).Y = x .^ 3; data(3).YLabel = 'Third Y-axis';
data(4).Y = x .^ 4; data(4).YLabel = 'Fourth Y-axis';
figure;
[hax, hlines, data] = plotyn(data);
legend(hlines, 'y = x', 'y = x^2', 'y = x^3', 'y = x^4', 2, 'Location', 'NorthWest');
Now, the data in the graph can be changed for example in datasets 2 and 3:
data(2).Y = x .^ (1 / 2);
data(3).Y = x .^ (1 / 3);
plotyn(hax, hlines, data)
See also plot, plotyy
Based on:
plotyyy.m by Denis Gilbert, Ph.D.
ploty4.m by Peter (PB) Bodin
Created by modification of the aforementioned functions by:
Jakub Nedbal
April 2015
Distributed under BSD license.
Citar como
Jakub Nedbal (2024). plotyn(varargin) (https://www.mathworks.com/matlabcentral/fileexchange/50542-plotyn-varargin), MATLAB Central File Exchange. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxCategorías
- MATLAB > Graphics > 2-D and 3-D Plots > Line Plots > Two y-axis >
Etiquetas
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.