【问题标题】:No visible points for plot in for loopfor循环中的绘图没有可见点
【发布时间】:2019-10-03 14:23:29
【问题描述】:

我正在为我想使用 for 循环制作的情节而苦苦挣扎。

我知道当我在循环之后添加它时它会起作用(只是一个简单的情节)。但我想以这种方式尝试。

fib = ones(1:10);
for k=3:10
    hold on
    fib(k) = fib(k-1) + fib(k-2);
    plot(k,fib(k))
end
hold off

输出是一个绘图,但没有可见的点。

【问题讨论】:

  • 你需要指定一个标记。
  • 您可能希望将fib 初始化为fib = ones(10, 1)。使用你的说法,你得到了一些 10 维怪物。

标签: matlab for-loop plot matlab-figure


【解决方案1】:

您需要指定一个标记。文档说:

如果XY 之一是标量,而另一个是标量或向量,则 plot 函数会绘制离散点。但是,要查看这些点,您必须指定一个标记符号,例如,plot(X,Y,'o')

原来是这样:

plot(k,fib(k),'o');

另请注意,您正在使用fib = ones(1:10); 创建一个 10 维数组。您很可能打算在 1 到 10 之间写一个逗号而不是冒号来创建一个行向量。即

fib = ones(1,10);

或列向量HansHirsesuggested:

fib = ones(10,1);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 1970-01-01
    • 2020-02-26
    相关资源
    最近更新 更多