我用长标签绘制了一个flot pie聊天,它显得丑陋,我认为可以在饼图或饼图下方显示标签。正在使用的javascript是
function onSuccess(series) {
var tickLabels = [];
var pieData= [];
for (var i =0;i<series.length;i++){
tickLabels.push([i,series[i][0]]);
var obj = {};
obj['label']=series[i][0];
obj['data']=series[i][1];
pieData.push(obj);
series[i][0] = i;
}
var data = [series];
var pieArea = $("#pieChart");
pieArea.css("height", "400px");
pieArea.css("width", "600px");
$.plot( $("#barChart"), data, {
series: {
bars: {
show:true,
barWidth: 0.5,
align: "center"
},
points: {
show: true
}
},
grid: {
hoverable: true,
clickable: true
},
xaxis: {
labelWidth:12,
labelAngle: 45,
ticks: tickLabels
}
} );
图表
有没有人知道这个
的任何解决方案答案 0 :(得分:8)
您可以将图例放在不同的容器中,并使用CSS将其放在任何位置。
legend: {
container: '#graphLegend'
}
来自API文档:
如果您希望图例显示在DOM中的其他位置,则可以 将“container”指定为放置图例的jQuery对象/表达式 表成。那么“位置”和“边缘”等选项将是 忽略。请注意,Flot将覆盖容器的内容。
我更新了Mark's fiddle来演示此替代方案。
答案 1 :(得分:4)
您可以结合图例的position
和margin
属性来执行此操作:
例如,这会将它推到northwest
角的右侧400像素。
legend: {
position: 'nw',
margin: [400,0]
}
请参阅小提琴here。