JQplot вешает браузер
Добрый день! Использую jqplot 1.0.8r1250,
jquery 1.10.2 / 1.9.1 из комплекта jqplot / 1.4.3 (на сайте разработчика сказано, что для некоторых функций нужна версия 1.4.3) Используются: jqplot.barRenderer.min.js jqplot.canvasAxisTickRenderer.min.js jqplot.categoryAxisRenderer.min.js jqplot.dateAxisRenderer.min.js jqplot.cursor.min.js jqplot.highlighter.min.js jqplot.canvasAxisLabelRenderer.min.js jqplot.canvasTextRenderer.min.js jqplot.pointLabels.min.js Строю и столбчатые, и линейные графики, независимо от их количества на странице во многих браузерах и на многих компьютерах (тенденция пока не ясна) страница зависает (выдается сообщение о том, что похоже скрипт не отвечает и все в этом духе). Если остановить скрипт на каком-то этапе - некоторые графики построятся, некоторые - нет, последовательно. В консоли все чисто. В этот момент на сервере падает апач (на разных серверах). С другими страницами и сайтами в этих браузерах/компах все ок. Иногда зависание графиков начинается не сразу, а через пару-тройку загрузок страницы (переполнение кэша?..). Иногда в консоли ошибок появляется: Цитата:
ctxPattern.lineTo(points[i][0], points[i][1]); Это все происходит в методе $.jqplot.ShadowRenderer.prototype.draw. Если я правильно понимаю, что-то с отрисовкой на canvas, с несоответствием типов или отсутствием данных?.. Пример построения графика:
var axisDates = ['14 октября','15 октября','16 октября','17 октября','18 октября','19 октября','20 октября'];
var chartData = [['14 октября', 0,'14 октября'],['15 октября', 0,'15 октября'],['16 октября', 0,'16 октября'],['17 октября', 0,'17 октября'],['18 октября', 0,'18 октября'],['19 октября', 0,'19 октября'],['20 октября', 0,'20 октября']];
j.jqplot.config.enablePlugins = true;
var plot2 = j.jqplot("chart_div_points_1", [chartData], {
title:'Название',
seriesDefaults:{
renderer: j.jqplot.BarRenderer,
rendererOptions: {
barPadding: 5,
barMargin: 5,
barDirection: 'vertical',
barWidth: 98,
animation: {
show: true,
speed: 2500
}
},
color:'#2E6E9E',
pointLabels: { show: false }
},
axes: {
xaxis: {
renderer: j.jqplot.CategoryAxisRenderer,
numberTicks: 0,
},
yaxis: {
tickOptions: {
formatString: '%d',
show: false
},
label:'Подпись оси',
labelRenderer: j.jqplot.CanvasAxisLabelRenderer,
labelOptions : {
angle: -90
},
numberTicks: 0,
max: 505,
min: 0
}
},
highlighter: {
show: true,
tooltipContentEditor: function(str, seriesIndex, pointIndex, jqPlot) {
var param = jqPlot.data[seriesIndex][pointIndex][1];
var date = jqPlot.data[0][pointIndex][2];
var html = "<div>";
html += date;
html += " <br>Значение : ";
html += param;
html += "</div>";
return html;
},
sizeAdjust: 2,
showTooltip: true,
tooltipLocation: 'n',
fadeTooltip: true
},
cursor: {
show: false,
zoom: false,
showTooltip: false,
showTooltipGridPosition: false
},
grid: {
drawGridLines: false
}
});
Подскажите, пожалуйста, куда копать? |
Цитата:
|
| Часовой пояс GMT +3, время: 13:31. |