用于GUI MATLAB的对数标度滑块

时间:2015-11-10 15:24:25

标签: matlab matlab-guide

我在MATLAB中为GUI创建滑块时遇到了麻烦。一世 真的想要一个范围从10 ^ -1到10 ^ -5的滑块。但那 因子间隔为0.1。所以滑块会 具有对数标度。有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我不确定我是否理解你。如果你想从线性比例做出对数比例:

对数的定义:

enter image description here

因此,如果您需要从10 ^ -1滑动到10 ^ -5,您希望从滑块获取某些值并正确转换它。我建议您将minmax设置为1和5(或-5和-1),并在每个滑块回调之后或仅使用滑块值转换使用此等式:

y = 10^(-x)

y是您想要的值,x是滑块中的值。 在代码中它应该类似于:

logValue = 10^(-get(hObject,'Value'));
set(handles.text2,'string',logValue);

通过在gui中添加一些可以显示y的文本框来检查此方法。

但是如果你想从对数线上做出线性比例:

 y = log(x)