You can manually generate date tags and add them to the data list as follows:
series: [{ data: [["Jan 1, 2005", 0], ["Feb 1, 2005", 0], ..., ["Dec 1, 2005", 54.4]], pointInterval: 24 * 3600 * 1000 * 31, pointStart: Date.UTC(2005, 0, 01) }]
Thus, you can use pointInterval as it is (for an approximate view along the x axis) and use the tag at points in the diagram (for accurate data).
If you zoom in on the chart, you will see a slight overlap between the points and ticks of x-Axis, but if you don't need perfect alignment, this should do the trick.
To generate date tags (for example, “January 1, 2005”), I would do the following:
var data = [0, 0, 0, 0, 0, 0, 0, 148.5, 216.4, 194.1, 95.6, 54.4]; var date = new Date("January 1, 2005"); var monthNameList = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; for (i = 0; x < data.length; i++) { var stringDate = monthNameList[date.getMonth()] + " 1, " + date.getFullYear(); resultList.push(stringDate); date.setMonth(date.getMonth() + 1); }
Then add each item to the data.
Edited: I think the first answer above is a very neat way to generate date stamps. (Check out JSFiddle)