Borrar filtros
Borrar filtros

How to make plot, with different scales on one axis

9 visualizaciones (últimos 30 días)
Jan Mares
Jan Mares el 11 de Oct. de 2020
Editada: Jan Mares el 12 de Oct. de 2020
Hi, I am trying to plot characteristic of photodiode. My problem is I can't find how to split the axis to two different scales in order to display the data appropriately.
You can see my script in the source.
My first data are here:
neosvicena_U = [-4 -2 -1 0 0.1 0.2 0.3 0.4 0.5 0.6];
neosvicena_I = [-11.4 -5.7 -3.4 -0.4 2.3 14.2 74.7 282.4 892 3513];
I have only managed to make x and y axis and also tick important values but dont know how to implement different scales.
Any help would be appreciated, thanks!

Respuestas (1)

Ameer Hamza
Ameer Hamza el 11 de Oct. de 2020
Read my answer here: https://www.mathworks.com/matlabcentral/answers/601147-extending-specific-y-axis-values#answer_501697. It shows how to combine two axes to show different scales on the y-axis.
  5 comentarios
Ameer Hamza
Ameer Hamza el 12 de Oct. de 2020
Can you show your code?
Jan Mares
Jan Mares el 12 de Oct. de 2020
Editada: Jan Mares el 12 de Oct. de 2020
all my code is in the pinned png image, I have kinda managed some solution now.. it looks at least similar to what I wanted.
clear all
neosvicena_U = [-4 -2 -1 0 0.1 0.2 0.3 0.4 0.5 0.6];
neosvicena_I = [-11.4 -5.7 -3.4 -0.4 2.3 14.2 74.7 282.4 892 3513];
x = neosvicena_U ;
y = neosvicena_I ;
ax1 = axes('Position', [0.1 0.1 0.8 0.4]);
ax1.XLim = [-5 1];
ax1.YLim = [-12 70];
hold on;
plot(x, y);
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
xlabel('U [V]')
ax2 = axes('Position', [0.1 0.5 0.8 0.4]);
ax2.XAxis.Visible = 'off';
ax2.YScale = 'log';
ax2.XLim = [-5 1];
ax2.YLim = [70 3500];
hold on;
plot(x, y);
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
title('Neosvícená dioda')
xlabel('U [V]')
ylabel('I [microA]')

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by