2013-06-21 58 views
5

我想从nvd3中的离散条形图中删除y轴刻度标签。nvd3:从离散条形图中删除y轴刻度标签

我已经看过nvd3的源代码,但找不到一个明显的功能,我可以改变。任何人都可以指出我的解决方案?

更新:代码

function Transform(value1, value2, chart_name,value3) { 
value3 = typeof value3 !== 'undefined' ? value3 : 'no_header'; 
var chart = nv.models.discreteBarChart() 
    .x(function (d) { 
    return d.label; 
}) 

    .y(function (d) { 
    return d.value; 
}) 

    .staggerLabels(true) 
    .tooltips(false) 
    .showValues(true); 

var a = []; 
var f = [{ 
    values: [] 
}]; 
d3.csv("../../csv/master.csv").get(function (error, rows) { 

if (error){ 
    console.log(error); 
    loadError("Uh Oh. This data set is missing... Try going <a href='/'>back to the start</a>"); 
    return; 
    } 

    for (var i = 0; i < rows.length; i++) { 
     a.push(rows[i]); 
    } 
    console.log(a[0].agency); 
    for (var key = 0; key < a.length; key++) { 
     var b = a[key]; 
     for (var c in b) { 
      if (c != "agency" && c != "division" && c != "pod") { 
       var d = b[c]; 
       a[key][c] = +d; 
      } 
     } 
     console.log(a[0].changes); 
     } 
    try { 
    var e = $.grep(a, function (v) { 
     return v.division == {{division|safe}}; 
     }); 
    var k = $.grep(e, function(v) { 
     return v.agency == {{agency|safe}}; 
     })[0]; 
    console.log(k.division); 
     } 
    catch (TypeError) { loadError("Uh Oh. We could not find this combination\ 
     of Agency & Division. Try going back to the <a href='/pitchview'>selection menu</a>"); 
    return; 
    } 
    if (k.agency){ 
    for (var g in k) { 
     if (g == value1 || g == value2 || g == value3) { 
      var h = { 
       "label": g, 
        "value": k[g] 
      }; 
      f[0].values.push(h); 
     } 
    } 


    d3.select('#' + chart_name + ' svg') 
     .datum(f) 
     .transition().duration(500) 
     .call(chart) 
    nv.utils.windowResize(chart.update); 
    return chart; 
    } else { 
    loadError("Uh Oh. We could not find this combination of Agency &\ 
     Division. Try going back to the <a href='/pitchview'>selection menu</a>");}}); 
} 
+0

您是否尝试过像'chart.yAxis.ticks(0)'? –

+0

是的,尝试了,在工具提示选项后 - 但没有奏效。这是错误的立场? – jvdh

+0

这将是一个单独的代码行,而不是设置的选项。 –

回答

20

有一个在nvd3离散条函数,其去除y轴(包括标签)的变量。在你的代码中使用它来删除它们:

.showYAxis(false) 

x轴存在一个类似的变量。

+0

这应该是被接受的答案!上面的一个更像是一个黑客! –

3

使用chart.yAxis.tickValues(0),这将关闭yticks,并保持在y标签

+0

很好的回答〜Plus 1! – Miron