octave相关内容
我正在尝试使用 plotyy 在 Octave 中创建一个图(在 Windows 上使用 v4.4.1)并将图例放在图外(因为数据覆盖了图内的所有可用空间).以下 MVCE 应该可以很好地重现该问题: % 生成一些随机数据来重现问题数据 = 兰特(1000,10);数据(:,1:8) = 数据(:,1:8)-0.5;数据(:,9:10) = 数据(:,9:10)+30;时间日期 = linspa
..
我使用的是 Windows 7 64 位.每次我使用绘图功能,绘图窗口都会显示和绘制成功,但之后它停止响应并且必须关闭它. 例如: x = linspace(0,1,10)y = x.^2情节(x,y); 奇怪的是,当绘图窗口冻结并且我必须关闭八度窗口时,它们也会无响应.如果我不使用绘图功能,就不会发生这种情况. 我不知道为什么.是因为我使用的是 64 位版本吗?请告诉我如何解决这
..
Octave 似乎假设特定的声音播放实用程序将在系统上可用,但似乎没有提供指定替代的能力.在下面的错误中,Octave 正在寻找 ofsndplay,它不是在所有系统上都可用的实用程序. 八度:38>声音(beamformed_20) sh: ofsndplay: 命令未找到 是否有 Octave 配置设置或代码片段可用于指定适用于系统的实用程序? 解决方案 在我的一台
..
Octave 有没有办法只计算和存储矩阵乘积的对角线? 基本上喜欢做:vector = diag(A*B); 除了对角线上的值,我不关心 A*B 的任何值.矩阵大小约为 80k x 12 和 12 x 80k,因此即使我不关心速度/额外内存,它也无法放入 RAM. 奇怪,因为 Octave 是一个大数据集的包,对角线很重要,所以应该是可以的. 解决方案 对角线的第一个元素是A
..
在 Coursera 的斯坦福大学的 Andrew Ng 的机器学习介绍性讲座中的幻灯片中,鉴于音频源是由两个空间分离的麦克风录制的,他针对鸡尾酒会问题给出了以下一行 Octave 解决方案: [W,s,v]=svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x'); 幻灯片底部是“来源:Sam Roweis、Yair Weiss、Eero Simoncelli
..
到目前为止我有这个: data = 14out = dec2bin(数据,4) 给出: out = 1110 但我想以这种格式获取二进制数: out = [1 1 1 0] 感谢您的帮助! 解决方案 您正在寻找 de2bi 和 'left-msb' 选项. data = 14out = de2bi(data, 4,'left-msb') 这需要通信系统工具箱.或者使用您的原
..
有一个向量 x 并且我必须添加一个元素 (newElem) . - 之间有什么区别吗? x(end+1) = newElem; 和 x = [x newElem]; ? 解决方案 x(end+1) = newElem 更健壮一些. x = [x newElem] 仅在 x 是行向量时有效,如果它是列向量 x = [x;newElem] 应该使用.x(end+1) =
..
我需要编写在 Octave 和 MATLAB 中运行的代码.问题是它需要做一些 GUI 的事情,而 MATLAB 和 Octave 的处理方式完全不同. 有什么方法可以检测我是在运行 MATLAB 还是 Octave,以便调用正确的函数? 解决方案 您可以使用以下测试来区分 Octave 和 MATLAB: isOctave =exist('OCTAVE_VERSION', 'bu
..
我正在使用 matlab/octave 创建一个扫描/啁啾信号,而我的结束信号似乎以错误的频率结束.如何修复它以便信号以正确的频率结束. PS:我无法在八度音程中使用 chirp 命令,因为我正在使用特定方程创建 chirp/sweep 信号. 带有简单方程的示例代码.和问题图 %test 扫频/啁啾清除所有,clc频率1=20;%开始频率频率2=200;%结束频率fs=44100;
..
我有一个大矩阵 A,它是 1GB 的双值,当我将它重塑为不同的维度时,速度非常快. A=rand(128,1024,1024);tic;B=reshape(A,1024,128,1024);toc经过的时间是 0.000011 秒. 怎么会这么快?另一个观察结果是,在运行该代码并存储两个 1GB 矩阵后,MATLAB 使用的内存少于应有的内存:MATLAB 使用的内存:1878 MB(1.96
..
我想根据特定列对矩阵进行排序.有一个 sort 函数,但它独立地对所有列进行排序. 例如,如果我的矩阵 data 是: 1 35 7-1 4 那么所需的输出(按第一列排序)将是: -1 41 35 7 但是sort(data)的输出是: -1 31 45 7 如何按第一列对这个矩阵进行排序? 解决方案 我认为 sortrows 函数正是您要找的. >>sortrows
..
我正在尝试对以下 MATLAB 操作进行矢量化: 给定一个带索引的列向量,我想要一个矩阵相同行数的列和固定数量的列.这矩阵用零初始化并在位置中包含一个由索引指定. 这是我已经编写的脚本示例: y = [1;3;2;1;3];m = 大小(y, 1);% for 循环yvec = 零点(米,3);对于 i=1:myvec(i, y(i)) = 1;结尾 想要的结果是: yvec =
..
我正在使用 Octave 从头开始开发语音识别系统.我试图通过检测频率差异来检测音素.目前我已经读入了一个 wav 文件,将值组织成块并将 fft 应用于整体数据.之后,我用 plot(abs(real(fft(q)))) 绘制新数据,它创建了这个图: 如何获得频率值(图表的峰值)? 解决方案 如果您无法访问 findpeaks,那么其工作原理的基本前提是,对于信号中的每个点,它
..
我想使用 Octave 绘制具有两个变量的相当简单的函数,例如: f(x,y) = x^2 + 3y .绘制单变量函数很容易,但是我在找出如何绘制两个变量函数时遇到了很多麻烦.有谁知道这样做的最佳方法? 解决方案 绘制两个变量的函数通常意味着一个 3 维图 - 在 MATLAB 中,您可以为此使用函数 plot3.要在区间 [-10,10] 中为 X 和 Y 绘制函数 f(x,y),您可以
..
有没有办法通过重复自身来扩展向量? >v = [1 2];>v10 = v x 5;%x 代表一些函数.类似于 perl 中的“1 2"x 5 那么 v10 将是: >v101 2 1 2 1 2 1 2 1 2 这应该适用于一般情况,而不仅仅是 [1 2] 解决方案 您正在寻找的功能是 repmat(). v10 = repmat(v, 1, 5)
..
以不同形状和大小经常弹出的问题是:为什么我会收到以下错误消息: “未定义函数 'function_name' 用于类型为 'double' 的输入参数." 本文试图解决可能出现此错误消息的所有不同情况,并提出解决方案. 解决方案 如果您偶然发现此错误消息并且不知道它的含义.请放心:我们 90% 的人都用谷歌搜索过相同的词组. “未定义函数 'int' 用于类型为 'dou
..
给定一个大小为 400x400 的方阵,我将如何使用 for 循环将其拆分为 20x20 的组成子矩阵?我什至想不出从哪里开始! 我想我想要这样的东西: [x,y] = 大小(矩阵)对于 i = 1:20:x对于 j = 1:20:y 但我不确定我将如何进行.想法? 解决方案 嗯,我知道发布者明确要求 for 循环,而 Jeff Mather 的回答正好提供了这一点. 但我
..
我正在尝试使用 matlab/octave 为这个螺旋设置动画,我希望它向上或向下螺旋 t = 0:0.1:10*pi;r = linspace (0, 1, numel (t));z = linspace (0, 1, numel (t));plot3 (r.*sin(t), r.*cos(t), z); 我尝试使用 for 循环为其设置动画,但这只是给了我一个圆锥形状,请参阅下面的代码和图
..
我正在尝试使用 matlab/octave 为这个螺旋设置动画,我希望它向上或向下螺旋 t = 0:0.1:10*pi;r = linspace (0, 1, numel (t));z = linspace (0, 1, numel (t));plot3 (r.*sin(t), r.*cos(t), z); 我尝试使用 for 循环为其设置动画,但这只是给了我一个圆锥形状,请参阅下面的代码和图
..
我有一个二维数组,称之为A.我还有另外两个二维数组,分别称为 ix 和 iy.我想创建一个输出数组,其元素是 ix 和 iy 提供的索引对处的 A 元素.我可以用如下循环来做到这一点: for i=1:nx对于 j=1:ny输出(i,j) = A(ix(i,j),iy(i,j));结尾结尾 如何在没有循环的情况下执行此操作?如果我执行 output = A(ix,iy),我会在 (ix)X(i
..