Frage

Also habe ich einige Daten aus einer Datenbank bin ziehen und bekommen eine UNIX-Zeitstempel und eine Nummer. So kann sagen, N (Anzahl) wurde am D verkauft (Datum).

Es gibt Tage fehlen, wie das Wochenende. Ich brauche es noch an den Tag angezeigt werden, aber keine Daten erfordern. Es ist ein Liniendiagramm.

1. April 2010, 50 verkauft
2. April 2010, 53 verkauft
7. April 2010, 10 verkauft
(Ich habe mehr als 1.000 Datensätze ein über mehrere Jahre erstreckt - so dass ich auch ein Zoom hinzufügen wird)

So sollte das Diagramm zeigen noch April 1-7, aber keine Daten für 3-6 haben. (Die Linie würde gerade von 2-7).

Alle Ideen, wie dies zu tun?

Danke, Josh

War es hilfreich?

Lösung

werfen Sie einen Blick hier: http://highcharts.com/ref/#series zweites Beispiel von 'data' Eigenschaft.

Sie müssen nur zu konvertieren mysql Datum, wandeln es in UNIX-Zeitstempel (UNIX_TIMESTAMP ()), und dann multiplizieren sie von 1000 (JS braucht Zeit in Mikrosekunden) ...

Andere Tipps

Skalieren Sie die x-Achse Ihrer Daten, wenn Sie das Diagramm sind die Schaffung, um nur die Tage zählen, wenn Sie mindestens einen Verkauf haben, und nur Ihre Achse gewährleisten vernünftig markiert ist.

Dies würde Schritt durch Ihre gesamte Datensatz bedeuten und sicherstellen, dass er aufeinanderfolgende Zahlen hat. So könnte nicht sehr effizient sein und sicherlich für die Vorverarbeitung (eine andere Taste in Ihrer Datenbank für „Verkauf Tag“ oder etwas) profitieren könnten.

Wenn möglich, dann kann mir zeigen Sie Ihren Code.

Auch dieser Link Sie geben etwas Hilfe sein. Demo zu null für bestimmtes Datum angeben: http: //jsfiddle.net/highcharts/FGRtd/

Sie können Ihre Daten als normale Y-Daten plotten und einen Formatierer auf der x-Achse

verwenden
dates = ['April 1 2010', 'April 2 2010', 'April 7 2010'];
numSold = [50, 53, 10];

chart = new Highcharts.Chart({
    series: [{
        type: 'line',
        data: numSold
    }],
    xAxis: {
        labels: {
            formatter: function() {
                var dateStr = dates[this.value];
                return dateStr;
            }
        }
    }
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top