Ployly.js использует много памяти при использовании большого количества точек данных.
Я пытаюсь решить проблему медленной загрузки с сайтом, который использует plotly.js для отображения графиков.Я думаю, что я сузил его до используемых точек данных, заставляя его использовать много памяти.Например, с графиком, который просто использует 1500 точек данных (Дата / целое число), он занял 500 Мб загрузки страницы.Мне было интересно, если кто-нибудь видел эту проблему или нашел решение?Пока что мой гугл-фу подходит к концу.
пример шаблона ветки
<ul class="list-group">
<div id="flow_data_cmFlowStatsFMYN2AFlow1{{ counter }}" class="collapse" style="width: 100%; height: 100%"><!-- Plotly chart will be drawn inside this DIV --></div>
</ul>
<script>
var flow = {
x: [
{% for d in n['flow_data_datetime'] %}
'{{ d|date('F j, Y g:i:s:a') }}',
{% endfor %}
],
y: [
{% for d in n['flow_data_cmFlowStatsFMYN2AFlow1'] %}
'{{ d }}',
{% endfor %}
],
name: 'FMY - N2A - {{ n['flow_data_flow_name'] }}',
type: 'scatter',
hovertemplate: 'FMY - N2A - {{ n['flow_data_flow_name'] }}, %{y} (Frames)',
};
var flowDropped = {
x: [
{% for d in n['flow_data_datetime'] %}
'{{ d|date('F j, Y g:i:s:a') }}',
{% endfor %}
],
y: [
{% for d in n['flow_data_cmFlowStatsFMYDN2AFlow1'] %}
'{{ d }}',
{% endfor %}
],
name: 'FMY and Dropped - N2A - {{ n['flow_data_flow_name'] }}',
type: 'scatter',
hovertemplate: 'FMY and Dropped - N2A - {{ n['flow_data_flow_name'] }}, %{y} (Frames)',
};
var data = [
flow,flowDropped
];
var layout = {
width: 1000,
height: 700,
margin: {
l: 100,
r: 50,
b: 220,
t: 100,
pad: 10
},
title: 'FLOW :: {{ n['flow_data_flow_name'] }}',
showlegend: true,
legend: {
x: 1,
y: 1
},
xaxis: {
title: 'Date / Time Pulled',
automargin: true,
height: 1000,
titlefont: {
family: 'Courier New, monospace',
size: 18,
color: '#7f7f7f'
}
},
yaxis: {
title: 'Frames Marked Yellow N2A',
automargin: true,
titlefont: {
family: 'Courier New, monospace',
size: 18,
color: '#7f7f7f'
}
}
};
Медленная загрузка. При просмотре статистики страницы размер загружаемого файла достигает 300-500 МБ.