剑道条形图类别标签基于值的左右
Kendo barchart category labels left and right based on value
我正在构建一个剑道条形图,其中包含两个相互"镜像"的序列。 一个序列具有负值,另一个序列具有正值。 我对标签格式的选择似乎仅限于将它们放在一侧或另一侧(基于我对明显选项的审查 - 我不是 html/javascript 大师)。 我真的很想让它们与柱线的值一起流动并相反(即清除柱线)。
这是我目前的图表
<div id="barchart"></div>
function setUpCharts()
{
$("#barchart").kendoChart({
title: {
text: "Bar Chart"
},
legend: {
visible: true,
position: "bottom"
},
seriesDefaults: {
type: "bar",
stack: true
},
series: [{
data: [0, 0, .69, .29, .85],
}, {
data: [-.80, -.56, 0, 0, 0],
}
],
categoryAxis: {
categories: ["Cat1", "Cat2", "Cat3", "Cat4", "Cat5"],
majorGridLines: { visible: false },
},
valueAxis: {
numeric: true,
line: { visible: false },
minorGridLines: { visible: true }
}
});
}
它也在: http://jsfiddle.net/xamlfishet/3jNn5/1/
有人有什么建议吗? 非常感谢!!
非常感谢
您包括小提琴! 这里的镜像确实非常棘手。 您需要做的是首先将序列与数据项相关联。 我希望根据您的设置,这是可能的。
$("#barchart").kendoChart({
dataSource: {
data: [
{ field: "Cat 1", left: -.80, right: 0 },
{ field: "Cat 2", left: -.56, right: 0 },
{ field: "Cat 3", left: 0, right: .69 },
{ field: "Cat 4", left: 0, right: .29 },
{ field: "Cat 5", left: 0, right: .58 }
],
}
series: [{
field: "right"
}, {
field: "left"
}]
});
现在,每个类别都与一个数据项相关联,您可以使用模板根据标签是正值还是负值来绝对定位标签。
categoryAxis: {
field: "field",
labels: {
template: function(e) {
if (e.dataItem.right === 0) {
return "<tspan style='position: absolute' dx='20'>" + e.value + "</tspan>"
}
else {
return "<tspan style='position: absolute' dx='-30'>" + e.value + "</tspan>"
}
}
},
majorGridLines: {
visible: false
},
},
这是一个工作小提琴...http://jsfiddle.net/7smar/1/
相关文章:
- 如何将返回的值应用于多个不同位置的多个选择器
- 如何查找值是否存在于二叉树中
- 如何隐藏&使用jQuery禁用依赖于另一个字段值的字段
- 如何使AngularJS控制器依赖于通过ajax加载在rootScope上的值
- 逻辑(JSint友好)等效于while循环中的此赋值
- 如何使用 jquery 检查该值是否存在于带有标签的 select2 下拉列表中:true
- 将 var 的值应用于加载页面中的另一个变量
- 选择数据属性日期值早于当前服务器日期的元素
- Chrome没有正确地将值应用于正在被“刷新”的输入;观看”;
- 如何捕获相对于常数值的下一个值
- 设置值时,语义UI下拉列表滞后于整个UI
- 将数学规则(如rnd,max等)应用于用户使用AngularJS指令输入的值
- 如何通过关系处理特定于父级的模型值
- 检查值存在于数组位置
- Javascript Switch 语句中的默认值仅适用于一种情况,但不适用于两种情况
- 剑道条形图类别标签基于值的左右
- 什么是节点.js相当于窗口[“myvar”] = 值
- 更新文本框相对于表达式的值
- 如何检查一个 JavaScript 对象中的值是否存在于另一个 JavaScript 对象中
- 角度指令不应用于值的更改