Tôi đang sử dụng Ext 5 và muốn tô màu các đoạn trong biểu đồ đường dựa trên các giá trị. Hiển thị dòng màu xanh lá cây nếu giá trị lớn hơn mục tiêu nếu không thì màu đỏ.Biểu đồ đường có nhiều đoạn màu
Có cách nào để thay đổi màu của đoạn đường trong biểu đồ Đường nhánh dựa trên giá trị của nó không?
tôi có thể thấy rằng không có built-in cách để làm điều này trong sencha từ này link
Tôi cũng đã cố gắng thêm một dòng sprite động trên đường để thực hiện một tác động của màu sắc khác nhau. Nó đã làm việc. Nhưng tôi không thể tìm được tọa độ x, y chính xác để vẽ dòng tùy chỉnh này một cách linh động.
Đây là mã tôi đã thử cho đến thời điểm này.
Ext.onReady(function() {
var data = [{
'date': '1',
'data2': 4
}, {
'date': '2',
'data2': 8
}, {
'date': '3',
'data2': 12
}, {
'date': '4',
'data2': 6
}, {
'date': '5',
'data2': 36
}];
Ext.create('Ext.chart.Chart', {
renderTo: Ext.getBody(),
width: 500,
height: 300,
store: {
fields: ['name', 'data2'],
data: data
},
listeners: {
redraw: function(){
var chart = this;
var series = chart.series[0];
var dataRange = series.dataRange;
var large = dataRange.find(function(v){ return v>14 });
if(large){
var line = series.getSurface().add({
type: 'line',
fromX: 354,
fromY: 75,
toX: 465,
toY: 257,
zIndex: 2000,
stroke: 'green',
'stroke-width': 2,
}).show(true);
}
}
},
axes: [{
type: 'numeric',
position: 'left',
fields: ['data2'],
title: {
text: 'Stores Visited',
fontSize: 15
},
grid: true,
minimum: 0
}, {
type: 'category',
position: 'bottom',
fields: ['date'],
title: {
text: 'Date',
fontSize: 15
}
}],
series: [{
type: 'line',
style: {
stroke: 'red',
lineWidth: 2
},
xField: 'date',
yField: 'data2'
}]
});
});
Tôi đã thử điều này. Nhưng vì trục x của tôi đại diện cho ngày và không phải là giá trị số, tôi không thể tùy chỉnh dữ liệu như trong fiddle của bạn. – Gilsha
@Gilsha Bạn có thể dễ dàng chuyển đổi ngày thành số hoặc ngược lại với mục đích vẽ đồ thị. Nếu bạn đang sử dụng 'Date' được tích hợp sẵn của JavaScript, các phương thức chuyển đổi là [' date.getTime() '] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTime) và ['Date (giá trị) mới') (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date). –