We are using the chart in a kind of complex application with interdependencies between a lot of components. So it would be hard to reproduce this in a fiddle I think. Maybe it would help if you or one of the zoomcharts staff gets access to our development server to test it. If you would like to do so please contact me via mail and I will create an account for you.
This is the config:
interaction: {
resizing: {
enabled: false
},
zooming: {
sensitivity: 50
}
},
toolbar: {
logScale: false,
displayPeriod: false,
displayUnit: false
},
currentTime: {
enabled: false
},
chartTypes: {
line: {
data: {
aggregation: 'avg'
}
}
},
area: {
displayUnits: [
{ unit: '15 m', name: '15 minutes' },
{ unit: '1 h', name: 'hour' },
{ unit: '6 h', name: '6 hours' },
{ unit: '1 d', name: 'day' },
{ unit: '1 w', name: 'week' },
{ unit: '1 M', name: 'month' },
{ unit: '1 y', name: 'year' }
]
},
timeAxis: {
maxUnitWidth: 25
},
data: {
dataFunction: function(from, to, unit, success, fail) {
//...
},
units: ['m', 'd', 'w', 'M', 'y'],
timeZoneOffset: 0,
prefetchRatio: 0,
requestMaxUnits: 100000
},
series: [{
data: {
index: 1
},
id: '268b2876-7e0c-4cb0-85da-74af16dd0abd',
style: {
lineColor: '32CD32',
lineWidth: 3
},
type: 'line'
}],
valueAxisDefault: {
valueFormatterFunction: function() { //... }
},
info: {
valueFormatterFunction: function() { //... }
}
To answer your questions:
We are using the newest version of zoomcharts (1.11.1) since yesterday. But there is no difference to 1.9.1 we used before. The update was my first step to solve the problem.
No, navigation.initialDisplayPeriod is not specified at chart creation. But the display period is set programmatically a short time after chart creation and everytime the user changes it in the toolbar. The code is:
updateTimeRange: function(timeRange) {
var me = this;
me.chart.setDisplayPeriod(timeRange.from.getTime() + ' > ' + timeRange.to.getTime(), 'newestData');
}
dataLimitFrom/dataLimitTo is indeed set. It is included in the JSON response of the AJAX call which fetches the data to display.