// *********************************************************** // // Globale Einstellungen // gültig für alle Diagramme // // *********************************************************** // Parse the date / time //var parseDate = d3.time.format("%Y-%m-%d %H:%M:%S").parse; var parseDate = d3.time.format("%Y-%m-%d").parse; // Einstellung auf deutsche Formate var de_DE = d3.locale({ "decimal": ",", "thousands": ".", "grouping": [3], "currency": ["", "€"], "dateTime": "%a %b %e %X %Y", "date": "%d.%m.%Y", "time": "%H:%M:%S", "periods": ["AM", "PM"], "days": ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"], "shortDays": ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"], "months": ["Januar", "Februar", "März", "April", "Mai", "Juni", "July", "August", "September", "Oktober", "November", "Dezember"], "shortMonths": ["Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"] }); // Zeit auf deutsches Format einstellen d3.time.format = de_DE.timeFormat; // Benutzerdefiniertes Zeitformat var customTimeFormat = d3.time.format.multi([ [".%L", function(d) { return d.getMilliseconds(); }], [":%S", function(d) { return d.getSeconds(); }], ["%H:%M", function(d) { return d.getMinutes(); }], ["%H:%M", function(d) { return d.getHours(); }], ["%a %d", function(d) { return d.getDay() && d.getDate() != 1; }], ["%b %d", function(d) { return d.getDate() != 1; }], ["%b", function(d) { return d.getMonth(); }], ["%Y", function() { return true; }] ]); // Zeitformat für Tooltipps var formatTimeTooltipp = d3.time.format("%e %B %H:%M"); // ************************************ // define grid line functions // ************************************ function make_x_axis1(x) { return d3.svg.axis() .scale(x) .orient("bottom") .ticks(15) } function make_y_axis1(yy) { return d3.svg.axis() .scale(yy) .orient("left") .ticks(5) } // ************************************************************ // Funktion zur Erzeugung einer Grafik (Linie) // Die Daten müssen zwei Spalten enthalten: (zeit | value) // // Parameter: // o titel Diagrammtitel oben // o sql wird z.Zt. nicht genutzt // o textX Beschrfitung der x-Achse // o textY Beschriftung der y-Achse // o breite Breite des Diagramms // o hoehe Höhe des Diagramms // o data Daten im JSON-Format // o scaleY 0=automatisch skalieren, 1=Prozent 0..100 // o units Einheiten für die Tooltipps // o id id in css-Klasse // #id ............ Breite, Rand/farbe) // #id .title ...... Farbe, Größe des Titels // #id .y .......... Farbe der y-Beschriftung // #id .linecolor .. Linienfarbe // #id .tooltip .... Frarbe Tooltipps // *********************************************************** function showDiagram1Line(titel, sql, textX, textY, breite, hoehe, data, scaleY, units, id) { var margin = {top: 30, right: 55, bottom: 30, left: 60}, width = breite - margin.left - margin.right, height = hoehe - margin.top - margin.bottom; document.write ("