Google visualization 如何在谷歌组合图中调整列宽

Google visualization 如何在谷歌组合图中调整列宽,google-visualization,Google Visualization,如何调整谷歌组合图上的列宽?下面是我的代码,但我不知道如何设置列宽。根据我输入的数据,api使列的宽度不同。我想要10像素的。我一直在尝试使用bar.groupWidth设置,但无法设置。有什么想法吗 <script type="text/javascript"> google.load("visualization", "1", {packages:["corechart"]}); google.setOnLoadCallback(drawChart); function g

如何调整谷歌组合图上的列宽?下面是我的代码,但我不知道如何设置列宽。根据我输入的数据,api使列的宽度不同。我想要10像素的。我一直在尝试使用bar.groupWidth设置,但无法设置。有什么想法吗

<script type="text/javascript">

google.load("visualization", "1", {packages:["corechart"]});

google.setOnLoadCallback(drawChart);

function getValueAt(column, dataTable, row) {
    return dataTable.getFormattedValue(row, column);
}

function drawChart() {
    var data = google.visualization.arrayToDataTable([
        ['Time', 'Boluses', 'Total Volume', '30 mL/kg', { role: 'annotation' }], [0,0,0,1769.1, null],[9, 500, 500, 1769.1, null],[29, 250, 750, 1769.1, null],[44, 250, 1000, 1769.1, null],[114, 2000, 3000, 1769.1, null],[238, 0, 3000, 1769.1, null],[238, 0, 3000, 1769.1, null],[288, 85, 3085, 1769.1, null],[288, 6.8, 3091.8, 1769.1, null],[348, 100, 3191.8, 1769.1, null],[348, 8, 3199.8, 1769.1, null],[408, 100, 3299.8, 1769.1, null],[408, 8, 3307.8, 1769.1, null],[360, 0, 3307.8, 1769.1, null]
    ]);

    var view = new google.visualization.DataView(data);

    var options = {
        title: 'sepsis treatment summary',
        fontName: 'Lato', 
        titleTextStyle: {fontSize: 18},
        annotation: {},
        vAxis: {title: 'total fluids received (mL)', minValue: 0, gridlines: {count: 6}},
        hAxis: {title: 'time after alert (minutes)', viewWindow: {min: 0, max: 360}, gridlines: {count: 6}},
        seriesType: "bars",
            series: { 
                1: {color: '#99CCFF', type: "area"},
                2: {color: 'red', type: "line", lineDashStyle: [10, 2]},
                3: {role: "annotation"}
            },
        annotations: {style: 'line'},
    };

    var chart = new google.visualization.ColumnChart(document.getElementById('chart'));

    chart.draw(view, options);

}

load(“可视化”、“1”、{packages:[“corechart”]});
setOnLoadCallback(drawChart);
函数getValueAt(列、数据表、行){
返回dataTable.getFormattedValue(行、列);
}
函数绘图图(){
var data=google.visualization.arrayToDataTable([
['Time','bolus','Total Volume','30ml/kg',{role:'annotation'}],[0,0,01769.1,null],[95005001769.1,null],[292507501769.1,null],[4425010001769.1,null],[114200030001769.1,null],[238,03001769.1,null],[288,85,3085,1769.1,null],[288,3091],[34810013191.81769.1,空],[34819999.81769.1,空],[40810013299.81769.1,空],[4083307.81769.1,空],[360,03307.81769.1,空]
]);
var view=newgoogle.visualization.DataView(数据);
变量选项={
标题:“脓毒症治疗总结”,
fontName:“Lato”,
titleTextStyle:{fontSize:18},
注释:{},
vAxis:{title:'total fluids received(mL)”,最小值:0,网格线:{count:6},
hAxis:{title:'time after alert(minutes)',viewWindow:{min:0,max:360},网格线:{count:6},
序列类型:“条”,
系列:{
1:{color:'#99CCFF',键入:“area”},
2:{颜色:'red',类型:'line',lineDashStyle:[10,2]},
3:{角色:“注释”}
},
注释:{style:'line'},
};
var chart=new google.visualization.ColumnChart(document.getElementById('chart');
图表绘制(视图、选项);
}

此代码创建以下图表:

API计算每个条形组的最大宽度,大致为:

var chartWidth, // chart area width in pixels
    axisRange, // axis max value - axis min value
    data, // DataTable, assume axis values are in column 0 for this exercise, and that data is sorted ascending
    minSeparation = axisRange, // will hold the minimum separation between daat points
    barGroupWidth;
// calculate the minimum distance between any two adjacent points
for (var i = 1; i < data.getNumberOfRows(); i++) {
    if (data.getValue(i, 0) - data.getValue(i - 1, 0) < minSeparation) {
        minSeparation = data.getValue(i, 0) - data.getValue(i - 1, 0);
    }
}
// calculate the maximum width of a bar group
barGroupWidth = chartWidth * minSeparation / axisRange;
var chartWidth,//以像素为单位的图表区域宽度
axisRange,//轴最大值-轴最小值
data,//DataTable,假设此练习的轴值位于第0列,并且数据按升序排序
minSeparation=axisRange,//将保持daat点之间的最小间距
条形宽度;
//计算任意两个相邻点之间的最小距离
对于(var i=1;i
请注意,这个函数是基于我能够进行反向工程的API的粗略近似

因此,如果图表的图表区域宽度为300像素,轴范围为100,相邻点之间的最小间距为10,则最大条形图组宽度将为30像素。如果试图将条形图组宽度设置为高于此值,则将忽略您的设置

在本例中,相邻点的间距为0(第5行和第6行、第7行和第8行、第9行和第10行、第11行和第12行),根据我的粗略近似,这将导致条形组宽度为0。实际的算法更为宽松,可能会为您提供1个像素宽的组。没有任何设置可以更改以使条形组更宽,您唯一的方法是更改数据集以将值隔开。这可能不容易做到,但我建议首先,请思考两个事件同时具有不同的值意味着什么,以及您如何能够以不同的方式表示这一点