Frage Histogramm in JavaScript?


Ich habe diesen Datensatz für Einkommen:

Einkommen Anzahl der Personen
0 245981
8.8 150444
30 126063
49,9 123519
70 115029
90,7 277149
109.1 355768
130 324246
150,3 353239
170,2 396008
190 396725
210 398640
230.1 401932
250 416079
270 412727
289,8 385192
309,7 343178
329,7 293707
349.6 239982
369.7 201557
389,3 165132
442,3 442075
543,4 196526
679,9 146784
883.9 48600
1555 44644

(Wie Sie sehen können, wird die Breite zwischen den Einkommensniveaus gegen Ende größer.)

  1. Wie mache ich ein genaues Histogramm dieser Daten in JavaScript? (Auf eine lineare x-Achsenskala mit einem Bereich von zB 0 - 2000)
  2. Wie kann ich die Anzahl der Personen ausschließen, für die nur Prozentsätze angezeigt werden? verschiedene Intervalle?
  3. Wenn ich genau 100 Symbole für die Daten platzieren möchte, wie Entscheide ich, wo ich sie platzieren soll?

6
2017-11-19 17:23


Ursprung


Antworten:


Die vorhandenen Histogrammbeispiele basieren auf Berechnen des Histogramms Aus Stichproben, sagen Sie, ob Sie eine Liste von Einzelpersonen und deren Einkommen hatten. In diesem Fall verfügen Sie bereits über die Daten für das Histogramm - Sie möchten es nur anzeigen.

Das Schwierige dabei ist, dass Ihr Histogramm Bins mit variabler Breite hat. Das erste, was Sie tun können, ist die variable Breite jedes Fachs zu ignorieren und nur ein einfaches Lollipop-Diagramm anzuzeigen. Das x-Achse ist eine lineare Skala für das Einkommen, und die y-Achse ist eine lineare Skala für die Zählung von Personen:

http://bl.ocks.org/1624656

Wenn Sie dies in ein Histogramm konvertieren möchten, können Sie nicht nur Linien mit fester Breite durch Balken mit variabler Breite ersetzen. Sie müssen die Daten normalisieren, so dass die Bereich der Balken kodiert die Häufigkeit von Personen mit diesem Einkommen. Daher ist die Breite des Balkens der Einkommensbereich (z. B. von 0 bis 8,8 für das erste Fach), und die Höhe des Balkens ist die Anzahl der Personen geteilt durch die Breite. Infolgedessen ist die Fläche (Breite × Höhe) proportional zur Anzahl der Personen. Das sieht so aus:

http://bl.ocks.org/1624660


21
2018-01-17 04:56



Wenn Sie nur die Daten in Bins sortieren wollen oder müssen, ohne zu plotten, werfen Sie einen Blick darauf histogram.js.


0
2017-09-05 21:26