Wolfram mathematica 如何在菩提树上设置刻度?
我似乎无法在Mathematica 8中更改BodePlot上的刻度Wolfram mathematica 如何在菩提树上设置刻度?,wolfram-mathematica,mathematica-8,Wolfram Mathematica,Mathematica 8,我似乎无法在Mathematica 8中更改BodePlot上的刻度 Clear[z] hz = z/(z - 0.4) (*make up some transfer function *) ts = 1; tf = TransferFunctionModel[hz, z, SamplingPeriod -> ts]; scale = {{"Linear", "dB"}, Automatic}; BodePlot[tf, PlotRange -> Automatic, Ima
Clear[z]
hz = z/(z - 0.4) (*make up some transfer function *)
ts = 1;
tf = TransferFunctionModel[hz, z, SamplingPeriod -> ts];
scale = {{"Linear", "dB"}, Automatic};
BodePlot[tf,
PlotRange -> Automatic,
ImageSize -> 300,
ScalingFunctions -> scale,
Ticks -> {{{0, Pi/4, Pi/2, 3/4 Pi, Pi}, Automatic}, Automatic}
]
根据文件,所有绘图选项均可用于BodePlot
请注意,BodePlot的记号格式是作为2个列表提供的,而不是作为普通绘图提供的,因为生成了2个绘图。在上面,我试图更改第一个图(震级图)的x轴刻度
问题是:如何改变菩提树上的滴答声?我在上述通话中是否出错
谢谢
编辑1
现在使用FrameTicks,我发现了一个非常奇怪的行为。如果我对框架右侧或顶部的任何标记使用Automatic,我会在控制台中得到内核错误。这里有一个例子
Clear[z]
hz = z/(z - 0.4)
tf = TransferFunctionModel[hz, z, SamplingPeriod -> 1];
BodePlot[tf,
FrameTicks ->
{
{{Automatic, Automatic}, {Automatic, None}},
{{Automatic, None}, {Automatic, None}}
}
]
上面给出了控制台上的内核错误消息。奇怪的是,如果我再次运行相同的命令,我不会在控制台上再次看到错误
将上述内容更改为以下内容,错误就会消失:
Clear[z]
hz = z/(z - 0.4)
tf = TransferFunctionModel[hz, z, SamplingPeriod -> 1];
BodePlot[tf,
FrameTicks ->
{
{{Automatic, None}, {Automatic, None}},
{{Automatic, None}, {Automatic, None}}
}
]
当我使用它时,不会出现错误:
Clear[z]
hz = z/(z - 0.4)
tf = TransferFunctionModel[hz, z, SamplingPeriod -> 1];
BodePlot[tf,
FrameTicks -> {{Automatic, Automatic}, {Automatic, Automatic}}
]
因此,在FrameTicks的右侧和顶部使用Automatic而不是None似乎会给BodePlot带来问题。我认为自动是一个安全的价值使用时,有疑问,但不是在这种情况下
BodePlot
返回带有帧的图片,而不是轴的图片,因此使用FrameTicks
而不是Ticks
+1,就是这样。我被文件上说的“BodePlot和Plot有相同的选项”吓了一跳,所以我没有想到尝试帧选项,只考虑了Plot选项。谢谢<代码>帧
和帧标记
是绘图
选项。它们只是默认情况下不被使用。你知道为什么有些函数可以检测到无效选项,而其他函数却不能?我使用笔记本界面,我看到当我尝试使用一个选项来处理一个它不处理的函数时,选项名字体变成红色,告诉一个人这个选项在那个位置不受支持或无效。但在本例中,由于滴答声不受BodePlot的支持,所以没有发生这种情况。我认为一些Mathematica函数需要更好地检测传递给它们的无效选项。