Python 在Matplotlib中定位y值-Matplotlib值不';t跟随滴答声定位

Python 在Matplotlib中定位y值-Matplotlib值不';t跟随滴答声定位,python,matplotlib,position,xvalue,xticks,Python,Matplotlib,Position,Xvalue,Xticks,我试图找到一个解决办法,但不幸的是,到目前为止一切都不起作用 我有一个代码示例,其中的值在两侧都非常接近y轴,我想将它们稍微移到中心。这两个刻度应该是相互比较的 from matplotlib import pyplot as plt y = {} x = ["a170", "b300"] y["OlC"] = [1,2] y["CSD"] = [3,4] col=["b", "r"] mark=[".","*"] Fig, axs = plt.subplots(figsize=(3.25,3

我试图找到一个解决办法,但不幸的是,到目前为止一切都不起作用

我有一个代码示例,其中的值在两侧都非常接近y轴,我想将它们稍微移到中心。这两个刻度应该是相互比较的

from matplotlib import pyplot as plt

y = {}
x = ["a170", "b300"]
y["OlC"] = [1,2]
y["CSD"] = [3,4]
col=["b", "r"]
mark=[".","*"]
Fig, axs = plt.subplots(figsize=(3.25,3.25))
for i, meth in enumerate(y):
    axs.plot(x, y[meth], color = col[i], marker = mark[i], linestyle='None', label=meth) 
我试图用下面的代码移动y记号,但它只移动了记号

axs.set_xticks([0.25,0.75])
是否有任何方法可以移动数值,例如,一个从左侧移动25%,另一个也移动75%,与刻度相同

谢谢大家!


您可以首先使用x轴上的数字进行打印,然后设置限制,设置所需的刻度,最后设置刻度标签。您可以在axs中选择自己喜欢的值。根据您希望刻度的距离设置\u xlim(-1,2)

for i, meth in enumerate(y):
    axs.plot(range(len(x)), y[meth], color = col[i], marker = mark[i], linestyle='None', label=meth) 

axs.set_xlim(-1, 2)
axs.set_xticks([0, 1])
axs.set_xticklabels(x)
axs.legend()

您可以首先使用x轴上的数字进行打印,然后设置限制,设置所需的刻度,最后设置刻度标签。您可以在axs中选择自己喜欢的值。根据您希望刻度的距离设置\u xlim(-1,2)

for i, meth in enumerate(y):
    axs.plot(range(len(x)), y[meth], color = col[i], marker = mark[i], linestyle='None', label=meth) 

axs.set_xlim(-1, 2)
axs.set_xticks([0, 1])
axs.set_xticklabels(x)
axs.legend()

非常感谢您!它与axs.set_xlim(-1,2)的一些变体一起工作!!!!非常感谢你!它与axs.set_xlim(-1,2)的一些变体一起工作!!!!