相交,setdiff,setxor,union和唯一函数接受新的排序选项“稳定”,该选项将以与输入相同的顺序(而不是升序)返回输出值。
现在,可通过webread和webwrite函数以及weboptions结构访问复杂的RESTful Web服务。一个主要功能是对cookie的支持,以实现与Web服务的RESTful通信。
现在,当端点对称时,linspace函数会生成对称序列。这更加直观,并且与Matlab R2019b中所做的最新更改兼容。
rand函数的基础算法已更改,对于单精度输出,该算法已修复,因此产生的值严格在(0,1)范围内。以前,它可能偶尔生成正确的端点值1(请参见Bug#41742)。此外,新的实现使用介于(0,1)范围内的浮点值之间的均匀间隔,而不是针对均匀密度(随机整数#/沿实数线的长度)。
数值积分得到了改善。 Quadv函数已被重写,以便它可以计算周期函数的整数。同时,所需的功能评估减少了约3.5倍,性能更好。修正了导致无法通过“ Waypoints”指定的复杂路径积分在相反方向上进行计算的问题。
编辑功能选项“ editinplace”现在默认为true,选项“ home”现在默认为空矩阵[]。文件将不再被复制到用户的HOME目录中进行编辑。可以通过将“ editinplace”设置为false并将“ home”设置为“〜/ octave”来恢复旧行为。
format命令支持两个新选项:大写和小写(默认)。使用默认值时,请为科学计数法的指数字符打印小写的“ e”,并为代表10-15的十六进制数字打印小写的“ a-f”。使用大写字母时,请打印“ E”和“ A-F”。以前的大写格式E和G不再控制输出的大小写。
另外,可以使用多个选项来调用format命令,以任意顺序控制格式,间距和大小写,例如:
请注意,在使用多个竞争格式选项的情况下,将使用rightmostone,并且在发生错误的情况下,先前的格式将保持不变。
匿名函数中不再允许使用L值引用(例如,增量(++),减量(–)和就地赋值运算符(+ =,-=,* =,/ =等)。
已添加有关冒号“:”范围运算符的可疑用法的新警告。每个都有一个新的警告ID,因此可以根据需要将其禁用。
regexp和相关函数现在可以正确处理UTF-8编码的字符串并要求使用它。与要求字符串以Octave的本机编码进行编码的其他任何函数一样,您可以使用native2unicode从首选语言环境进行转换。例如,UTF-8中的版权符号是native2unicode(169,“ latin1”)。
现在可以将启动文件octaverc放在用户本地配置文件的平台相关位置(例如,在类似Unix的操作系统上为$ {XDG_CONFIG_HOME} / octave / octaverc,在Windows上为%APPDATA%\ octave \ octaverc)。
在Octaveversion 6中不建议将Qt4用于图形和GUI,并且将不进行进一步的错误修复。在Octave版本7中将完全删除Qt4支持。
图例功能已被完全重写。这修复了许多历史错误,并且还实现了新属性,例如“ AutoUpdate”和“ NumColumns”。不再主动维护的gnuplot工具包仍然使用旧的图例功能。
轴功能已更新,解决了10个影响“等”轴的错误。
图形图元现在接受“ none”的颜色属性值,这在需要隐藏特定图元(例如,轴对象的“ ycolor” =“ none”)的Y轴而不隐藏整个图元时非常有用。可见性” =“关闭”。
已将新属性“ FontSmoothing”添加到了文本和axis对象,该属性控制在字符渲染期间是否使用抗锯齿功能。默认设置为“开”,它会生成平滑的,更具视觉吸引力的文本。
现在实现了图形属性“ windowscrollwheelfcn”。当用户操作给定图形上的鼠标滚轮时,可以提供要执行的回调函数。
现在实现了图形属性“指针”,“ pointershapecdata”和“ pointershapehotspot”。这样就可以更改显示在绘图窗口中的光标(Matlab语言中的指针)的形状。
图形属性“ paperpositionmode”现在具有默认的“自动”,而不是“手动”。此更改更加直观,并且与Matlab兼容。
图案线的外观“ LineStyle” =“:” |“-” |“-”。对于较小的宽度(“ LineWidth”小于1.5像素)已进行了改进,这是常见的情况。
现在,默认情况下,打印到EPS文件使用严格的边界框(“ -tight”自变量进行打印)。这对于通常嵌入在其他文档中且与Matlab兼容的EPS文件更有意义。如有必要,请使用“ -loose”选项来重现以前版本的Octave中出现的图形。
不再正式支持以下打印设备:cdr,corel,aifm,ill,cgm,hpgl,mf和dxf。使用这些设备时将发出警告,并且支持这些格式的代码最终将从将来的Octave版本中删除。
文字下标和上标的位置已经过重新设计,现在产生的视觉效果类似于乳胶。
pkg describe现在列出依赖关系和反向依赖关系(即,其他依赖于软件包询问的已安装软件包)。
现在,在卸载软件包时,pkg现在检查是否有剩余的已加载软件包取决于要删除的软件包。如果是这种情况,pkgabort会显示一条解释性错误消息。可以使用-nodeps选项覆盖此行为。
现在,函数unique将返回第二和第三输出的列索引向量。如果存在重复值,则返回的默认索引现在是“首次”出现。 R2012b之前的版本中的以前的Octave行为或Matlab行为可以通过使用“旧版”标志获得。
现在,带有“行”参数的函数setdiff返回与Matlab兼容的结果。可以通过使用“旧版”标志来获取以前的Octave行为或R2012b之前版本中的Matlab行为。
函数的相交,setxor和union现在接受“旧版”标志,该标志会更改索引值(第二和第三输出)以及所有输出的方向,以匹配R2012b之前的Matlab版本。
该功能流管与Matlab兼容,并沿流线绘制管,这些流线由矢量场散度缩放。仅Octave扩展ostreamtube可用于可视化由于局部错流发散而引起的矢量场的流动扩展和收缩。
图形属性“ LineWidth”和“ MarkerSize”现在以点而不是像素为单位进行测量。与以前的Octave版本相比,某些线条和标记会显得大4/3。
为了与Matlab兼容,meta.class属性“ SuperClassList”已重命名为“ Superclasslist”。原始名称将作为别名存在,直到Octave版本8.1。
当与类函数进行查询时,由函数内联创建的内联函数现在为“内联”类型。在Octave的先前版本中,返回的类为“ function_handle”。此更改与Matlab兼容。 Matlab和Octave均已弃用内联函数,最终可能会删除支持。匿名函数可用于替换所有内联函数实例。
现在,默认情况下,函数javaaddpath会将新目录添加到现有动态类路径中。要附加它们,请使用新的“ -end”参数。现在可以在一个单元格字符串数组中指定多个目录。
为了与Matlab的GUIDE创建的图形兼容,添加了一个未记录的函数gui_mainfcn。
添加了几个类型为mustBe *的验证器函数。请参阅下面的新功能列表。
以下功能和属性已在Octave 6中弃用,并将从Octave 8(或6之后的第二个主要发行版本)中删除:
现在,mkoctfile用于链接器标志的环境变量是LDFLAGS而不是LFLAGS。 LFLAGS已过时,如果使用它会发出警告,但它将继续起作用。
以下功能和属性在Octave 4.4中已弃用,并已从Octave 6中删除。