【问题标题】:Legend Label Customizaton not working in Model Controller图例标签自定义在模型控制器中不起作用
【发布时间】:2015-06-02 14:50:16
【问题描述】:

基于以下implementation,我可以自定义图例标签,当我放入我的视图控制器时它可以工作

series: [{
 field: "value",
 name :"#= group.items[0].fname || group.items[1].fname#" 
}],

但是,当我放入我的模型视图控制器时,它就不起作用了。

chart.setDataSource(theDataSource);
chart.options.series.name = "#= group.items[0].fname || group.items[1].fname#"
chart.refresh();

【问题讨论】:

    标签: javascript kendo-ui kendo-chart


    【解决方案1】:

    当你更新 options 属性时,你需要在完成后调用 refresh() (http://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart#fields-options):

    chart.refresh();
    

    您也可以尝试使用 setOptions 方法 (http://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart#methods-setOptions):

    var chart = $("#chart").data("kendoChart");
    chart.setOptions({ 
        series: [{
            field: "value",
            name :"#= group.items[0].fname || group.items[1].fname#" 
        }] 
    });
    

    以下方法应该可行,

    更改以下代码行

    chart.options.series.name = "#= group.items[0].fname || group.items[1].fname#"
    

    chart.options.series[0].name = "#= group.items[0].fname || group.items[1].fname#"; 
    

    【讨论】:

    • 感谢ezanker,我在chart.options.series.name 之后有chart.refresh();,但它没有显示fname。顺便说一句,如果我有大约 10 个条形图怎么办。我应该如何处理group.items[0].fname, .........., group.items[10].fname, 我已经支持你的努力了。
    • @casillas,你也可以试试 chart.redraw();。如果您有 10 个类别,则系列名称模板可能不是最好的选择。也许你可以让一个类别的所有相同项目的 fname 相同,这样无论值是否为 0,系列名称都可以是 group.items[0].fname。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-04
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多