我正在使用Sencha Touch 2.1和图表1.1来显示一些数据.
我有一个如下图所示的饼图:
我希望标签保持现在的位置,但我希望它们是水平的(不是旋转的).
extend: 'Ext.chart.PolarChart',
requires: [
'Ext.chart.axis.Numeric',
'Ext.chart.axis.Category',
'Ext.chart.series.Pie',
'Charting.store.charts.perStore',
'Ext.chart.interactions.Rotate'
],
config: {
colors: ["#6295C7", "#CCCCC", "#FFFFF"],
store: 'chrtProduct',
// centered:true,
// innerPadding:20,
series: [{
type: 'pie',
labelField: 'verdeling',
label:{
/*display:'middle',
orientation:'horizontal',*/
field:'patVerdeling',
font: '1em Trade Gothic LT Std Bold',
contrast:true,
disableCallout:true
},
xField: 'patVerdeling'
//,rotation:90
}]
//,interactions: ['rotate']
取消注释时,以下代码似乎没有做任何事情.
display:'middle',
orientation:'horizontal',
最佳答案 好吧,我不确定这是否是最好的方式,但它对我有用,所以花了一些时间深入到sencha图表库后,解决方案比我预期的更容易.
只需在位于app项目的touch / src / chart / series / sprite / PieSlice.js的PieSlice.js中注释这一行:
labelCfg.rotationRads = midAngle + Math.atan2(surfaceMatrix.y(1, 0) - surfaceMatrix.y(0, 0), surfaceMatrix.x(1, 0) - surfaceMatrix.x(0, 0));
此行作为旋转饼图标签的关键角色.