If anyone needs dataZoom for log charts, this is a workable solution, unless there's a better way, i'd love some feedback.
1. create a dummy yAxis following your other 'real' axis *options.yAxis = [* * {id:"logyaxis", type:"log" ... },* * {type:"value"}* *]* 2. create a slider dataZoom targeting the dummy yAxis, but *not *a dataZoom for the actual axis *{ name: "logzoom", yAxisIndex: n, type: "slider" ... } * (i wish this could be done with a yAxisId instead) 3. handle the datazoom event of the chart and adjust max/min of the axis instead *function scaleToLog(scale){* * // play with the f(x) parameters here return 1e-20 * Math.pow(10, scale/1.5)}* *g_chart.on("datazoom",function(params){* * if ( params.dataZoomId == "logzoom" ){* * startValue = scaleToLog(params.start) endValue = scaleToLog(params.end) g_chart.setOption({ yAxis:{* * id: "logyaxis",* * min: startValue, max: endValue } })* * }* *})*