How to show only integers (no decimals) in chart API x/y-axis labels

前端 未结 11 1330
予麋鹿
予麋鹿 2021-02-03 23:10

I\'m using a column chart with the Google Chart JS Api. I\'m displaying some values (total orders by day) that can only be represented as integers.

Everything is work

11条回答
  •  攒了一身酷
    2021-02-03 23:56

    I don't have enough rep to reply to Ian Hunter's post directly, but what that does is format the label, but doesn't set the grid lines to the same value as the label, which can have undesirable results. So let's say you have these grid lines:

    10

    7.5

    5

    2.5

    0

    When you format the label to only show integers it shows this: 10 8 5 3 0

    But then your data on the graph doesn't tie-in with the y-scale labels. E.g If you have a value of 3 it actually shows above the '3' labels because the '3' label is actually 2.5

    Unfortunately, the only solution I could think of was to monitor the min/max ranges of the data shown in the graph, and then apply some logic to set the min/max according to how many y-scale labels I have, such that they would divide with no remainders.

    So in the case above, I'd set it to

            vAxis: { 
              viewWindow:{
                max:12,
                min:0
              }
            }
    

    This would give grid lines of

    12

    8

    6

    4

    0

    No decimals, and no problems with the data not correlating with the labels on the graph.

提交回复
热议问题