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 Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zwei Dinge:
dc.Einheiten.Ordnungszahl
als parameter für.xUnits()
..x()
.Hier ist, was ich meine:
Sehen dieses JSFiddle: http://jsfiddle.net/reblace/tbamW/156/
Aus irgendeinem Grund, konnte ich nicht
renderHorizontalGridLines()
oderrenderVerticalGridLines()
zu arbeiten, aber der rest ist gut.InformationsquelleAutor der Antwort reblace
Hinzufügen
das problem gelöst.
InformationsquelleAutor der Antwort Prakash