使用动态标签Morris条形图

时间:2014-10-11 13:55:37

标签: javascript php jquery morris.js

我使用Morris条形图来显示产品销售情况。我想有动态标签(悬停时)。我通过PHP获取数据。

array('product' => $row['productid'], 'sales'=> $row['freq'], 'name' => $product_name);

我的Jquery代码在这里:

$.getJSON('getdata.php?command=product_sales', function(data) 
    {
    //var product_name = data.name;
        Morris.Bar({
            element: 'morris-product-sales-chart',
            data: data,
            xkey: ['product'],
            ykeys: ['sales'],
            labels: ['Product Name'],
            hideHover: 'auto',
            resize: true

        });
    });

如果您注意到,标签硬编码为“产品名称”,但我希望它是动态的(PHP中的“名称”属性)。知道如何做到这一点吗?

由于

2 个答案:

答案 0 :(得分:0)

我不确定我是否正确理解(到这里寻找其他东西),但这应该有效:

labels: [<?=$name?>]

我在我的地方使用类似的东西,我从数据库中提取表格数据(包括产品名称列表)。

答案 1 :(得分:0)

Absoluteley!假设您有一个具有Morris对象的变量

var achart = Morris..Bar({
        element: 'morris-product-sales-chart',
        data: data,
        xkey: ['product'],
        ykeys: ['sales'],
        labels: ['Product Name'],
        hideHover: 'auto',
        resize: true

    });
});

您可以将标签设置为achart.options.labels =然后执行重绘以呈现更新。