Усечение в графиках и графиках

Этот пример показывает, как усечение использования MATLAB® в графиках и как управлять усечением.

Что Отсекает?

Усечение происходит, когда часть графика происходит вне контуров оси. В MATLAB® часть графика, который отсекается, не появляется на экране или в печатном выводе. Пределы по осям графика определяют контуры.

Выключение усечения

По умолчанию MATLAB отсекает графики, которые расширяют за пределами пределов осей.

figure
surf(peaks)
zlim([-4 4])

Используйте свойство Clipping осей управлять поведением усечения.

ax = gca;               % get the current axis
ax.Clipping = 'off';    % turn clipping off

Управление стилем усечения

Используйте свойство ClippingStyle управлять способом отсечь, работает. Если ClippingStyle установлен в '3dbox', то MATLAB отсекает графики к объему, заданному пределами x, y, и осями z. Если ClippingStyle установлен в 'rectangle', то MATLAB отсекает графики к мнимому прямоугольнику, чертившему вокруг за пределами x, y, и осей z. Графики ниже показа различие между двумя стилями усечения.

Усечение в 2D графиках

Усечение также используется в 2D графиках. Например, MATLAB отсекает синусоиду в графике ниже.

x = -pi:pi/20:pi;
y = sin(-pi:pi/20:pi);
plot(x,y)
ylim([-0.9 0.9])

Если усечение выключено, то MATLAB отображает целую синусоиду.

ax = gca;
ax.Clipping = 'off';

Усечение и маркеры

Усечение не влияет на маркеры, чертившие в каждой точке данных, пока сама точка данных в пределах по осям x и y графика. MATLAB отображает целый маркер, даже если это расширяет немного вне контуров осей.

p = plot(1:10,'*');
p.MarkerSize = 10;
axis([1 10 1 10])

Была ли эта тема полезной?