2011年09月28日 星期三 01:15
plt.plot 或plt.plot_date在画图时,坐标的间隔如何设定?
比如要坐标显示:1,2,3,4,5,6,7,8,9,10
但是python有时候默认的间隔是:2,4,6,10 (坐标起始点不显示)
即如何自定义坐标的间隔使其均匀的显示出来。
2011年09月28日 星期三 10:03
你指的是横坐标吧?就你所说的,坐标要显示1,2,3,4,5,6,7,8,9,10。但是python有时候默认的间隔是:2,4,6,10 。
这个问题实际上跟你的坐标取值范围是有关系的,例如当使用x=np.linspace(1,10,100000)时,坐标显示的就是1,2,3,4,5,6,7,8,9,10,而当你x=np.linspace(0,10,100000)时,显示的是2,4,6,8,10 。
当然这是个一般的绘图例子,你那个应该也是类似的
2011年09月28日 星期三 15:28
2011年09月28日 星期三 18:27
最简单的办法就是使用xticks(),它有两个参数,第一个是刻度的位置列表,第二个是刻度的文字列表,如果省略第二个参数,那么文字由第一个列表决定:
import pylab as pl
import numpy as np
x = np.linspace(0, 100, 100000)
pl.plot(x, x)
pl.xticks(np.arange(0,100,5))
也可以设置定位刻度用的locator对象:
from matplotlib.ticker import MultipleLocator
ax = pl.gca()
ax.xaxis.set_major_locator(MultipleLocator(5))
除了MultipleLocator之外,还有许多别的Locator,你可以自己研究。
Zeuux © 2024
京ICP备05028076号