Octave 如何使用整数向量创建图例?

Octave 如何使用整数向量创建图例?,octave,Octave,如何使用八度音阶4.4使用整数向量创建图例?我可以使用以下代码为绘图创建图例: legend({'4','8','16','32',}, 'location', 'northeast'); 我不希望对值列表进行硬编码,但我希望使用整数向量,因为它可能会根据输入数据而变化: v=[4,8,16,32]; 我尝试过这个,但它创建了一个没有文本的传奇: legend(cellstr(num2cell(v)), 'location', 'northeast'); 从以下文件: 图例项可以指定为单个

如何使用八度音阶4.4使用整数向量创建图例?我可以使用以下代码为绘图创建图例:

legend({'4','8','16','32',}, 'location', 'northeast');
我不希望对值列表进行硬编码,但我希望使用整数向量,因为它可能会根据输入数据而变化:

v=[4,8,16,32];
我尝试过这个,但它创建了一个没有文本的传奇:

legend(cellstr(num2cell(v)), 'location', 'northeast');
从以下文件:

图例项可以指定为单个字符串参数、字符数组或字符串的单元格数组

使用以下命令可以轻松生成字符数组。您只需要注意,您的输入(数字)数组是一个列向量

下面是一个小例子:

x=0:100;
v=[4,8,16,32];
等等
图(x,v(1)。/x);
图(x,v(2)。/x);
图(x,v(3)。/x);
图(x,v(4)。/x);
拖延;
图例(num2str(v.),“位置”,“东北”);
这就是
v=[4,8,16,32]
的输出:

这就是
v=[2,3,4,5]
的输出:

希望有帮助

>版本
ans=5.1.0

您的转换不起作用。如果只尝试
cellstr(num2cell(v))
它将返回一个包含空字符串的单元格。我会使用
l=arrayfun(@num2str,v,'UniformOutput',false)
创建一个类似于您手动创建的单元格数组。