2016-10-07 65 views
2

莫里斯折線圖有可能有不同的preUnits嗎?莫里斯圖表不同的preUnits

這裏是我的javascript:

Morris.Line({ 
    element: 'payment_chart', 
    data: json.data, 
    xkey: 'm', 
    ykeys: json.label, 
    labels: json.label, 
    parseTime: false, 
    preUnits: "$", 
    smooth: true, 
    resize: true 
}); 

我只有兩條線,一條表示美元價值,其他的數量。我的工具提示是這樣的:

April 
Sales: $3 
Amount: $249.99 

我想要做的是從銷售中刪除美元符號。

回答

2

不,你不能有不同的preUnits莫里斯折線圖:

preUnits:設置爲一個字符串值(例如:「$」)添加一個標籤前綴所有的Y-標籤。

但是你可以設置hoverCallback功能做的工作:

Morris.Line({ 
 
    element: 'payment_chart', 
 
    data: [ 
 
    { y: '2006', a: 100, b: 90 }, 
 
    { y: '2007', a: 75, b: 65 }, 
 
    { y: '2008', a: 50, b: 40 }, 
 
    { y: '2009', a: 75, b: 65 }, 
 
    { y: '2010', a: 50, b: 40 }, 
 
    { y: '2011', a: 75, b: 65 }, 
 
    { y: '2012', a: 100, b: 90 } 
 
    ], 
 
    xkey: 'y', 
 
    ykeys: ['a', 'b'], 
 
    labels: ['Sales', 'Amount'], 
 
    parseTime: false, 
 
    preUnits: "$", 
 
    smooth: true, 
 
    resize: true, 
 
    hoverCallback: function (index, options, content, row) { 
 
    var indexAmount = 2; 
 
    var txtToReplace = $(content)[indexAmount].textContent; 
 
    return content.replace(txtToReplace, txtToReplace.replace(options.preUnits, "")); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.min.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.css" rel="stylesheet"/> 
 

 
<div id="payment_chart"></div>

+0

非常感謝你。這工作完美。我已經接受你的答案。 – Alko