Skip to content

Commit

Permalink
Merge pull request #2925 from Joshuabaker2/master
Browse files Browse the repository at this point in the history
Ability to manually set bar chart bar width
  • Loading branch information
etimberg authored Jul 16, 2016
2 parents 6572c94 + 191c280 commit 7930137
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 0 deletions.
2 changes: 2 additions & 0 deletions docs/04-Bar-Chart.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ type | String | "Category" | As defined in [Scales](#scales-category-scale).
display | Boolean | true | If true, show the scale.
id | String | "x-axis-0" | Id of the axis so that data can bind to it
stacked | Boolean | false | If true, bars are stacked on the x-axis
barThickness | Number | | Manually set width of each bar in pixels. If not set, the bars are sized automatically.
categoryPercentage | Number | 0.8 | Percent (0-1) of the available width (the space between the gridlines for small datasets) for each data-point to use for the bars. [Read More](#bar-chart-barpercentage-vs-categorypercentage)
barPercentage | Number | 0.9 | Percent (0-1) of the available width each bar should be within the category percentage. 1.0 will take the whole category width and put the bars right next to each other. [Read More](#bar-chart-barpercentage-vs-categorypercentage)
gridLines | Object | [See Scales](#scales) |
Expand All @@ -110,6 +111,7 @@ type | String | "linear" | As defined in [Scales](#scales-linear-scale).
display | Boolean | true | If true, show the scale.
id | String | "y-axis-0" | Id of the axis so that data can bind to it.
stacked | Boolean | false | If true, bars are stacked on the y-axis
barThickness | Number | | Manually set height of each bar in pixels. If not set, the bars are sized automatically.

You can override these for your `Chart` instance by passing a second argument into the `Bar` method as an object with the keys you want to override.

Expand Down
6 changes: 6 additions & 0 deletions src/controllers/controller.bar.js
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,9 @@ module.exports = function(Chart) {

calculateBarWidth: function(index) {
var xScale = this.getScaleForId(this.getMeta().xAxisID);
if (xScale.options.barThickness) {
return xScale.options.barThickness;
}
var ruler = this.getRuler(index);
return xScale.options.stacked ? ruler.categoryWidth : ruler.barWidth;
},
Expand Down Expand Up @@ -504,6 +507,9 @@ module.exports = function(Chart) {
calculateBarHeight: function (index) {
var me = this;
var yScale = me.getScaleForId(me.getMeta().yAxisID);
if (yScale.options.barThickness) {
return yScale.options.barThickness;
}
var ruler = me.getRuler(index);
return yScale.options.stacked ? ruler.categoryHeight : ruler.barHeight;
},
Expand Down

0 comments on commit 7930137

Please sign in to comment.