【问题标题】:Setting the minimum vertical value of a column chart using the Visualization Google API使用 Visualization Google API 设置柱形图的最小垂直值
【发布时间】:2023-03-03 21:47:01
【问题描述】:

我正在使用带有 AngularJS 的 Google Chart API。
我试图通过这样做将柱形图垂直轴的min 属性设置为0

var dataMois = CaDuMois.query(function(){
    $scope.comparatifVentes.data = {
        "cols": [
            {id: "t", label: "Mois", type: "string"},
            {id: "s", label: "Vente", type: "number"}
        ],
        "rows": [
            {c: [
                {v: d.getFullYear()-4},
                {v: dataMois[4].valeur},
            ]},
            {c: [
                {v: d.getFullYear()-3},
                {v: dataMois[3].valeur}
            ]},
            {c: [
                {v: d.getFullYear()-2},
                {v: dataMois[2].valeur},
            ]},
            {c: [
                {v: d.getFullYear()-1},
                {v: dataMois[1].valeur},
            ]},
            {c: [
                {v: "Encours "+d.getFullYear()},
                {v: dataMois[0].valeur},
            ]}
        ],
        "vAxis.viewWindow": [{min:"0"}]
    };
    $scope.comparatifVentes.type = "ColumnChart";
    $scope.comparatifVentes.options = {
        'backgroundColor': '#f5f5f5',
        'title': "Montant(€) total des ventes des 5 derniers mois de "+monthNames[n],'height':"250"
    }
});
<div class="row">
    <div class="col-md-12">
        <div google-chart chart="comparatifVentes" style="{{chart.cssStyle}}"/>
    </div>
</div>

min 在我的图表上仍然位于250000
我做错了吗?

【问题讨论】:

    标签: javascript angularjs google-api google-visualization


    【解决方案1】:

    来自文档,Visualization: Column Chart

    vAxis.viewWindow.min

    要渲染的最小水平数据值。

    当 vAxis.viewWindowMode 为“漂亮”或“最大化”时被忽略。 类型:数字 默认值:自动

    我猜“水平”是一个错字。

    应该这样写:

    // create properly
    var options = {
        vAxis : { 
            viewWindow : { 
                min : 0 
            }
        } 
    }
    

    虽然一旦创建,也可以这样访问:

    // use this to modify only if it exists already
    options.vAxis.viewWindow.min = 123;
    

    你写的不正确有两个原因:

    // this is bad
    var options = { "vAxis.viewWindow" : [{min:"0"}] }
    
    • 这会创建options["vAxis.viewWindow"] 而不是options["vAxis"]["viewWindow"]
    • 这会将值放入一个对象中,并将该对象放入一个数组中。它只能像这样访问:options["vAxis.viewWindow"][0]["min"]

    【讨论】:

      猜你喜欢
      • 2013-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-13
      • 1970-01-01
      相关资源
      最近更新 更多