$(function() { var min = [], avg = []; min.push([gd(2023,05,10), 2039.00, '']); avg.push([gd(2023,05,10), 2039.00, '']); min.push([gd(2023,05,29), 2089.00, '']); avg.push([gd(2023,05,29), 2089.00, '']); min.push([gd(2023,06,17), 2139.00, '']); avg.push([gd(2023,06,17), 2139.00, '']); min.push([gd(2023,07,06), 2139.00, '']); avg.push([gd(2023,07,06), 2139.00, '']); min.push([gd(2023,07,25), 1909.00, '']); avg.push([gd(2023,07,25), 1909.00, '']); min.push([gd(2023,08,13), 1929.00, '']); avg.push([gd(2023,08,13), 1929.00, '']); min.push([gd(2023,09,01), 1939.00, '']); avg.push([gd(2023,09,01), 1939.00, '']); min.push([gd(2023,09,20), 1939.00, '']); avg.push([gd(2023,09,20), 1939.00, '']); min.push([gd(2023,10,09), 2020.00, '']); avg.push([gd(2023,10,09), 2086.33, '']); min.push([gd(2023,10,28), 2020.00, '']); avg.push([gd(2023,10,28), 2056.33, '']); min.push([gd(2023,11,16), 2020.00, '']); avg.push([gd(2023,11,16), 2109.67, '']); min.push([gd(2023,12,05), 2020.00, '']); avg.push([gd(2023,12,05), 2109.67, '']); min.push([gd(2023,12,24), 2020.00, '']); avg.push([gd(2023,12,24), 2159.75, '']); min.push([gd(2024,01,12), 2020.00, '']); avg.push([gd(2024,01,12), 2182.25, '']); min.push([gd(2024,01,31), 2020.00, '']); avg.push([gd(2024,01,31), 2169.75, '']); min.push([gd(2024,02,19), 2020.00, '']); avg.push([gd(2024,02,19), 2107.25, '']); min.push([gd(2024,03,09), 2020.00, '']); avg.push([gd(2024,03,09), 2052.25, '']); min.push([gd(2024,03,28), 2020.00, '']); avg.push([gd(2024,03,28), 2059.75, '']); min.push([gd(2024,04,16), 2020.00, '']); avg.push([gd(2024,04,16), 2162.25, '']); min.push([gd(2024,05,05), 2020.00, '']); avg.push([gd(2024,05,05), 2139.75, '']); min.push([gd(2024,05,24), 2020.00, '']); avg.push([gd(2024,05,24), 2147.25, '']); Date.prototype.yyyymmdd = function() { var yyyy = this.getFullYear().toString(); var mm = (this.getMonth()+1).toString(); var dd = this.getDate().toString(); return yyyy + "." + (mm[1]?mm:"0"+mm[0]) + "." + (dd[1]?dd:"0"+dd[0]); } function gd(year, month, day) { return new Date(year, month - 1, day); } function eur_prefix(val, axis){ val = parseFloat(val); return parseFloat(val.toFixed(2)) + " €" } eur_prefix = function(val, axis){ val = parseFloat(val); return parseFloat(val.toFixed(2)) + " €" } var plot = $.plot("#flotchart", [ { data: avg, label: "средняя цена", points: { symbol: "circle", fillColor: "#767773"}}, { data: min, label: "минимальная цена", points: { symbol: "circle", fillColor: "#65a422"}} ], { colors: ["#767773", "#65a422"], series: { lines: { show: true }, points: { show: true, fill: true, lineWidth: 3 } }, grid: { hoverable: true, clickable: false, borderWidth: { top: 0.1, right: 0.1, left: 1, bottom: 1 }, }, yaxis: { min: 1718, max: 2401, tickFormatter: eur_prefix } , xaxis: { mode: "time", minTickSize: [4, "day"], timeformat:"%Y.%m.%d" } }); $("
").css({ position: "absolute", display: "none", border: "1px solid #65a422", padding: "3px", "background-color": "#efefef", opacity: 0.80 }).appendTo("body"); $("#flotchart").bind("plothover", function (event, pos, item) { if (item) { var x = item.datapoint[0], y = eur_prefix(item.datapoint[1].toFixed(2)); $("#tooltip").html(new Date(x).yyyymmdd() + " " + item.series.label + " " + y + " " + item.series.data[item.dataIndex][2]) .css({top: item.pageY+5, left: item.pageX+5}) .fadeIn(200); } else { $("#tooltip").hide(); } }); $("#flotgraph").show(); });