Python 如何选择轴中的第一个和最后一个记号标签,并定义其之间的主记号数?
我正在制作一些模板,并制作一些选项来控制轴中的刻度分布。到目前为止,我已经添加了几个选项,最后一个选项我自己也做不到。我希望能够选择: 轴中的第一个和最后一个主刻度 在第一个刻度和最后一个刻度之间选择主刻度的数量,并自动将其线性分布。 我已经设法完成了第一项任务,但是我不知道如何完成第二项任务 Obs:我知道如何使用大刻度和小刻度,但我希望只能使用大刻度 以下是代码示例:Python 如何选择轴中的第一个和最后一个记号标签,并定义其之间的主记号数?,python,numpy,matplotlib,Python,Numpy,Matplotlib,我正在制作一些模板,并制作一些选项来控制轴中的刻度分布。到目前为止,我已经添加了几个选项,最后一个选项我自己也做不到。我希望能够选择: 轴中的第一个和最后一个主刻度 在第一个刻度和最后一个刻度之间选择主刻度的数量,并自动将其线性分布。 我已经设法完成了第一项任务,但是我不知道如何完成第二项任务 Obs:我知道如何使用大刻度和小刻度,但我希望只能使用大刻度 以下是代码示例: import numpy as np import matplotlib.pyplot as plt from matpl
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.ticker import FixedLocator
data = np.loadtxt('my_data.dat') # Load Data File
x = data[:,0]
y = data[:,6]
x_first_tick = 0
x_last_tick = 2
y_first_tick = 0
y_last_tick = 100
x_major_ticks = 5 # Number of major ticks in x axis
y_major_ticks = 5 # Number of major ticks in y axis
x_locs= [x_first_tick, x_last_tick]
y_locs =[y_first_tick, y_last_tick]
fig = plt.figure()
ax = fig.add_subplot()
ax.scatter(x, y, s=1)
ax.xaxis.set_major_locator(FixedLocator(locs = x_locs))
ax.yaxis.set_major_locator(FixedLocator(locs = y_locs))
plt.tight_layout()
plt.show()
图形输出:
提前谢谢
编辑:发布我使用发布原则创建的模板选项
约翰
可以按如下方式设置刻度:
ax.set_xticks(
[x_first_tick + (x_last_tick - x_first_tick) * i / (x_major_ticks - 1) for i in range(x_major_ticks)],
minor=False)
ax.set_yticks(
[y_first_tick + (y_last_tick - y_first_tick) * i / (y_major_ticks - 1) for i in range(y_major_ticks)],
minor=False)
参数minor默认为False,可以省略。对于小刻度,使用minor=True。谢谢!同样的原则也适用于我实施的其他一些方案。
ax.set_xticks(
[x_first_tick + (x_last_tick - x_first_tick) * i / (x_major_ticks - 1) for i in range(x_major_ticks)],
minor=False)
ax.set_yticks(
[y_first_tick + (y_last_tick - y_first_tick) * i / (y_major_ticks - 1) for i in range(y_major_ticks)],
minor=False)