Verwenden einer Ordinalskala ('d3.scale.ordinal') für die x-Achse in einem Balkendiagramm

Habe ich ein Daten-array wie dieses:

var data = [{"Alphabet_Type":"a"}, {"Alphabet_Type":"b"}, {"Alphabet_Type":"a"}];

Ich bin mit:

  • dc.js
  • crossfilter.js
  • d3.js

Ich möchte erstellen Sie eine Balkendiagramm mit:

  • die x-Achse mit einem alphabet name, und
  • die y-Achse mit der Anzahl der Instanzen des Alphabets.

Frage: Wie kann ich den plot ein Balkendiagramm mit einer ordinalskala auf der x-Achse?

Mein code:

var data = [{"Alphabet_Type":"a"}, {"Alphabet_Type":"b"}, {"Alphabet_Type":"a"}];

var Filter = crossfilter(data);
var Dimension = Filter.dimension(function (d) { return d.Alphabet_Type; });
var Group = Dimension.group();

dc.barChart("#bar-chart")
    .width(800) 
    .height(275) 
    .transitionDuration(0) 
    .margins({ top: 10, right: 50, bottom: 30, left: 40 })
    .dimension(Dimension) 
    .group(Group) 
    .elasticY(false)
    .elasticX(false)
    .x(d3.scale.linear().domain([-1, 10]))
    .y(d3.scale.linear().domain([0, 5]))
    .centerBar(true)
    .renderHorizontalGridLines(true)
    .renderVerticalGridLines(true)
    .brushOn(false);

Schließlich habe ich ein anderes problem ist, dass Alphabet_Type ist nicht vorhersagbare Werte. Also brauche ich für das abrufen der Werte für Alphabet_Type über crossfilter.js und Einbeziehung dieser Werte in der Domäne. Wie kann ich dies tun?

InformationsquelleAutor der Frage Prakash | 2013-09-11

Schreibe einen Kommentar