两个快速的Mathematica问题

时间:2010-05-24 14:33:06

标签: wolfram-mathematica

  1. 如何删除x轴上的数字而不是y轴?
  2. 是否可以在不移动功能的情况下移动y轴?我的意思是,不是让y轴在x = 0,而是在x = -5?

2 个答案:

答案 0 :(得分:5)

对于大多数选项控制轴,您可以使用两个值的列表来指定两个轴的不同行为。您目前如何删除这些数字?我能想到的唯一方法是手动指定刻度位置,没有标签,如下所示:

Ticks -> {{{0, ""}, {1, ""}, {2, ""}}, Automatic}

否则你必须开始调整图形输出,我想?无论如何,无论你做什么,你都可以使用这样的双元素列表来为每个维度应用不同的选项。

要重新定位轴,您可以使用选项AxesOrigin;在您的示例中,您将使用AxesOrigin->{-5,0}

答案 1 :(得分:5)

刻度线由TicksFrameTicks Frame -> True控制。请注意,默认情况下,ContourPlotDensityPlot等图表具有框架(即Frame -> True)。 Ticks的规范是

Ticks -> {<x ticks>, <y ticks>, <z ticks>}

其中z ticks仅适用于3D绘图。 FrameTicks规范是

FrameTicks -> { {left, right}, {bottom, top} }

TicksFrameTicks都同时接受AutomaticNone使用默认算法或没有刻度。因此,为了消除x轴上的刻度,你可以

Ticks -> { None, Automatic }

和帧

FrameTicks -> { {Automatic, Automatic}, {None, None} }

如果您想要更好地控制刻度线的确切位置,那么@Jefromi是正确的,您需要指定一个列表。 TicksFrameTicks文档值得阅读,以便更好地了解如何执行此操作。但是要注意,做一些比列出几点更复杂的东西在Mathematica中是一种黑色艺术,并且会引起很多挫折。

至于你的第二个问题,你使用AxesOrigin -> {-5, 0}作为@Jefromi指出。

相关问题