2014-06-15 36 views
0

我想用matplotlib生成一些图。我有几个特定的​​时间点,我想表示在x轴上,即0,8,24和72.默认情况下,他们在0到120的范围内绘制。我想改变这一点,以便只有4个均匀分布的点。我试图将x轴刻度更改为所需的值。

x = ['0','8','24','72'] 

但是密谋要对我"x"但被忽视和正常绘制。 有没有办法将x轴刻度更改为线图上的特定点?

+0

你可以明确地设置要与刻度标记plt.xticks感谢 – ThePredator

回答

1

您可以使用plt.xticks() 一个可以满足您需求的示例程序。

import numpy as np 
import matplotlib.pyplot as plt 

x = np.linspace(0,5,4) 
y = np.sin(x) 

xticks = ['0','8','24','72'] 

plt.plot(x,y) 
plt.xticks(x,xticks) # This makes your desired x ticks 
plt.show() 

enter image description here

+0

!只是想补充一点,使得x = [0,8,24,72]仍然在不同的距离间隔点,并且除了xticks中的四个点之外,只是移除了x轴上的所有数字。要改变这个我叫x = [1,2,3,4] – Amos

+0

@Amos你的意思是你有超过4个变量? – ThePredator

+1

不,我有4个变量。你的回答正是我所期待的。我的部分问题是根据我想给他们的名字调用x变量,所以他们都有不同的距离。我添加了我的评论,以帮助任何人可能会发现这一点,并做我做的同样的事情。 – Amos