Jez*_*z D 1 charts extjs sencha-touch
早上
我使用下面的代码在Sencha中创建一个图表
它工作正常,但是,所有列都是不同的随机颜色.然后我需要所有颜色相同.
我尝试使用fill: 'blue'
,并fill: '#000080'
与style: { fill: 'blue' }
在系列,但没有
var days30fields = new Array('name');
var days30fieldsd = new Array();
var days30fieldValues = new Object();
days30fieldValues['name'] = 'Last 30 days';
for(var xd = 1; xd<31; xd++){
days30fields.push('day'+xd);
days30fieldsd.push('day'+xd);
days30fieldValues['day'+xd] = Math.floor((Math.random()*100)+1);
}
var chartb = new Ext.chart.Chart({
renderTo : Ext.getBody(),
xtype: 'chart',
itemId:'demochart',
title: 'Sales Figures',
animate: true,
width : '80%',
height : '70%',
margin: '150 auto',
store: {
fields: days30fields,
data:
//'name': 'Last 30 Days',
/*'day1': 10,
'day2': 12,
'day3': 14,
'day4': 8,
'day5': 13*/
days30fieldValues
},
axes: [{
type: 'numeric',
position: 'left',
minimum: 0,
renderer: function (value) {
value = value / 1000000;
return value.toFixed(1);
},
title: 'Number of orders',
fields: days30fieldsd
}, {
type: 'category',
position: 'bottom',
title: 'Days',
fields: 'name',
}],
series: [{
highlight: true,
type: 'column',
stacked: true,
xField: 'name',
yField: days30fieldsd,
}]
});
Run Code Online (Sandbox Code Playgroud)
并在视图配置中:
items: [
{
xtype : 'container',
flex: 1,
items: [chartb]
},
Run Code Online (Sandbox Code Playgroud)
这是一个小提琴
更新
解决方案1
series: [{
highlight: true,
type: 'column',
//stacked: true,
xField: 'name',
yField: days30fieldsd,
renderer: function(sprite, record, attr, index, store){
return Ext.apply(attr, {
fill: 'red'
});
}
}]
Run Code Online (Sandbox Code Playgroud)
看到这个小提琴
解决方案2(适用于多种颜色)
使用Ext.chart.theme.Base
您的图表创建新主题并应用它.
Ext.define('Ext.chart.theme.ColumnTheme', {
extend: 'Ext.chart.theme.Base',
constructor: function(config) {
this.callParent([Ext.apply({
colors: ['red','green']
}, config)]);
}
});
Run Code Online (Sandbox Code Playgroud)
ColumnTheme
在图表中使用主题配置应用
var chartb = new Ext.chart.Chart({
renderTo : Ext.getBody(),
theme:'ColumnTheme',
xtype: 'chart',
itemId:'demochart',
.... same code
Run Code Online (Sandbox Code Playgroud)
看到这个小提琴