Ken*_*nsg 15 python matplotlib
我的python绘图数据仅显示x轴上的2个点.
我想要更多,但不知道如何.
x = [ datetime.datetime(1900,1,1,0,1,2),
datetime.datetime(1900,1,1,0,1,3),
...
] # ( more than 1000 elements )
y = [ 34, 33, 23, ............ ]
plt.plot( x, y )
Run Code Online (Sandbox Code Playgroud)
X轴仅显示2个间隔点.我尝试使用.xticks但不适用于X轴.它给出了以下错误:
TypeError: object of type 'datetime.datetime' has no len()
Run Code Online (Sandbox Code Playgroud)
Seb*_*ian 22
无论是什么原因,您只能默认获得2个刻度,您可以通过使用日期定位器更改自动收录器定位器来修复它(自定义它).
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
x = [ datetime.datetime(1900,1,1,0,1,2),
datetime.datetime(1900,1,1,0,1,3),
...
] # ( more than 1000 elements )
y = [ 34, 33, 23, ............ ]
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
plt.plot( x, y )
ax.xaxis.set_major_locator(mdates.MinuteLocator(interval=15)) #to get a tick every 15 minutes
ax.xaxis.set_major_formatter(mdates.DateFormatter('%H:%M')) #optional formatting
Run Code Online (Sandbox Code Playgroud)
您有几个定位器(例如:DayLocator,WeekdayLocator,MonthLocator等)在文档中阅读它:
http://matplotlib.org/api/dates_api.html
但也许这个例子会有所帮助:
http://matplotlib.org/examples/api/date_demo.html
| 归档时间: |
|
| 查看次数: |
16702 次 |
| 最近记录: |