我可以从谷歌柱形图得到vAxis.maxValue(Can I get the vAxis.maxV

2019-10-17 13:10发布

我已提请使用谷歌图表柱形图。 现在我想知道什么实际vAxis.maxValue图表使用。 请注意,我没有设置这个值,图表已设置本身。 但我想知道它使用了什么样的价值。 我怎样才能做到这一点?

Answer 1:

我还没有发现任何地方,说明谷歌是如何确定它的最大值和最小值轴值(有时他们是很奇怪)。 在Excel中是不可能的计算(这取决于字体大小,图表大小,线宽等)。

处理这样的问题,最简单的方法是写一个函数来确定自己的最大/最小轴值。 下面的代码可以帮助(这是什么逻辑做到这一点的一种方式,根据需要为应用程序调整):

// Take the Max/Min of all data values in all graphs (these are just arbitrary numbers)
var totalMax = 345;
var totalMin = -123;

// Figure out the largest number (positive or negative)
var biggestNumber = Math.max(Math.abs(totalMax),Math.abs(totalMin));

// Round to an exponent of 10 appropriate for the biggest number
var roundingExp = Math.floor(Math.log(biggestNumber) / Math.LN10);
var roundingDec = Math.pow(10,roundingExp);

// Round your max and min to the nearest exponent of 10
var newMax = Math.ceil(totalMax/roundingDec)*roundingDec;
var newMin = Math.floor(totalMin/roundingDec)*roundingDec;

// Determine the range of your values
var range = newMax - newMin;

// Define the number of gridlines (default 5)
var gridlines = 5;

// Determine an appropriate gap between gridlines
var interval = range / (gridlines - 1);

// Round that interval up to the exponent of 10
var newInterval = Math.ceil(interval/roundingDec)*roundingDec;

// Re-round your max and min to the new interval
var finalMax = Math.ceil(totalMax/newInterval)*newInterval;
var finalMin = Math.floor(totalMin/newInterval)*newInterval;


文章来源: Can I get the vAxis.maxValue from a Google Column Chart