Я не могу изменить тики на BodePlot в Mathematica 8.
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}
]
В соответствии с документацией, все параметры Plot могут использоваться для BodePlot.
Примечаниеформат для Ticks для BodePlot поставляется в виде 2 списков, а не одного как обычного графика, так как генерируется 2 графика.Выше я пытаюсь изменить тики оси X для первого графика (график величины).
Вопрос: Как изменить тики на BodePlot?Я делаю ошибку в приведенном выше вызове?
спасибо
EDIT 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}}
]
Так, кажется, использование Automatic вместо None для правой стороны, а верхняя сторона в FrameTicks вызывает проблему для BodePlot.Я думал, что автоматическое значение было безопасным для использования в случае сомнений, но не в этом случае.