How do I change the interval on one of my axis at different points along the axis?

5 Ansichten (letzte 30 Tage)
I'm currently plotting data but some of it is too condensed to visualize properly on the current scale. Here's what my plot looks like:
As you can see I attempted to use the xticks() and xtickslabel() functions on the left end of the axis but that only added ticks, not changed the interval. What I need to do is to have the range from 0.1-1 be the same distance as from 1-2, that way the condensed data on the left side can be expanded to better visualize what is occuring. Thanks in advance!

Antworten (2)

Maik
Maik am 6 Dez. 2022
You can try setting axes properties that should keep the scale.
x1 = 0:0.1:40;
y1 = cos(x1).^2;
x2 = 1:0.2:20;
y2 = sin(x2);
f = figure;
ax1 = axes(f);
plot(ax1,x1,y1,'-r')
% Plot second graph with different scale
ax2 = axes(f);
plot(ax2,x2,y2,'-.b')
%% calling this property makes the axes hold
ax2.Color = 'none';
%%
ax1.FontSize = 8;
ax1.XColor = 'r';
ax2.FontSize = 8;
ax2.XColor = 'b';

Voss
Voss am 6 Dez. 2022
Maybe this will be good enough:
set(gca(),'XScale','log')

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by