两个快速的Mathematica问题

sci*_*guy 5 wolfram-mathematica

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

Cas*_*bel 5

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

Ticks -> {{{0, ""}, {1, ""}, {2, ""}}, Automatic}
Run Code Online (Sandbox Code Playgroud)

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

要重新定位轴,可以使用该选项AxesOrigin; 在你的例子中,你会使用AxesOrigin->{-5,0}.


rco*_*yer 5

刻度线由任一TicksFrameTicks如果控制Frame -> True.注意,默认情况下绘制图表ContourPlot并且DensityPlot具有框架(即Frame -> True).规范Ticks

Ticks -> {<x ticks>, <y ticks>, <z ticks>}
Run Code Online (Sandbox Code Playgroud)

其中z ticks仅存在于3D图中.该FrameTicks规范是

FrameTicks -> { {left, right}, {bottom, top} }
Run Code Online (Sandbox Code Playgroud)

双方TicksFrameTicks同时接受AutomaticNone分别使用默认的算法或没有蜱.因此,要消除x轴上的刻度线

Ticks -> { None, Automatic }
Run Code Online (Sandbox Code Playgroud)

和框架

FrameTicks -> { {Automatic, Automatic}, {None, None} }
Run Code Online (Sandbox Code Playgroud)

如果你想更好地控制刻度线的确切位置,那么@Jefromi是正确的,你需要指定一个列表.在TicksFrameTicks文档是值得阅读来获取如何做到这一点了更好的手感.但要注意的是,做一些比列出几点更复杂的事情在Mathematica中是一种黑色艺术,并且会导致很多挫败感.

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