Wrong position of annotations in complex bar chart (Google Chart API)

I have an annotated pivot bar chart that summarizes the values. Annotations are always at the end of a line, but when there is no value for the last data line (I), the annotation is at the beginning and I don't know how to fix it.

var dataArray = [
    ["Date", "A", "B", "C", "D", "E", "F", "G", "H", "I", {role: 'annotation'}],
    ["7.08.2015", 0, 0, 0, 3, 6, 1, 0, 0, 0, 10],
    ["6.08.2015", 0, 0, 0, 0, 4, 6, 1, 0, 7, 18],
    ["5.08.2015", 0, 0, 0, 2, 4, 0, 0, 0, 5, 11]
];

      

Demo and code at JSFiddle

Image of the problem ...

+3


source to share


1 answer


Found a workaround ... added a new data column named Total, has the same meaning as the annotation:

var dataArray = [
    ["Date", "A", "B", "C", "D", "E", "F", "G", "H", "I", "Total", {role: 'annotation'}],
    ["7.08.2015", 0, 0, 0, 3, 6, 1, 0, 0, 0, 10, 10],
    ["6.08.2015", 0, 0, 0, 0, 4, 6, 1, 0, 7, 18, 18],
    ["5.08.2015", 0, 0, 0, 2, 4, 0, 0, 0, 5, 11, 11]
];

      

And added this to the parameters:

var options = {
    ...
    series: {
        9: {
            color: 'transparent',
            type: "bar",
            targetAxisIndex: 1,
            visibleInLegend: false
        }
    }
};

      

Demo and code at JSFiddle



This makes the General panel transparent, hides it in the legends, and allows it to start from zero.

A dynamic version that takes the last line of data for annotations:

var series = {};
series[data.getNumberOfColumns() - 3] = {
    color: 'transparent',
    type: "bar",
    targetAxisIndex: 1,
    visibleInLegend: false
};

options["series"] = series;

      

Demo and code at JSFiddle

+2


source







All Articles