画一条不连续的线

时间:2019-02-10 10:41:42

标签: matlab plot line visualization matlab-figure

如何在MATLAB中获得此图?这是障碍为B=120,执行价为K=100的下放看涨期权的收益。我应该以某种方式将两个图形组合在一起吗?

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以通过多种方式进行操作。这是其中两个:

选项1:

function q54615569(B, K)
y = @(x)(x>=B).*(x-K);
x = 0:2*K;
figure(); plot(x, y(x));
xlabel('S(T)');

enter image description here

选项2:

function q54615569(B, K)
y = @(x)x-K;
x = 0:2*K;
figure(); hL = plot( x(x<=B), 0.*x(x<=B), x(x>=B), y(x(x>=B)) );
set(hL, 'Color', lines(1), 'Linestyle', 'none', 'Marker','o','MarkerSize', 2,...
  'MarkerFaceColor', lines(1));
xlabel('S(T)');

enter image description here