Javascript 多系列线条颜色
我有以下的实施。它已实现并具有功能 但是,我想知道,当等级为Javascript 多系列线条颜色,javascript,kendo-ui,kendo-chart,Javascript,Kendo Ui,Kendo Chart,我有以下的实施。它已实现并具有功能 但是,我想知道,当等级为data[I]=60时,是否可以更改线条颜色,使其变为蓝色 $("#chart").kendoChart({ series: [{ name: "Grading", color: function(point){return point.value<60 ? "red" : "blue"; }, width: 1, size:
data[I]=60时,是否可以更改线条颜色,使其变为蓝色
$("#chart").kendoChart({
series: [{
name: "Grading",
color: function(point){return point.value<60 ? "red" : "blue"; },
width: 1,
size: 2,
tooltip: {
visible: true,
},
data: [81, 91, 61, 55, 59, 43, 57, 59, 66, 65, 54, 70, 72.37]}
],
seriesDefaults: {
type: "line",
missingValues: "interpolate"
},
});
$(“#图表”).kendoChart({
系列:[{
名称:“分级”,
color:function(point){return point.value是的,这是可能的,但是您发布的代码无法工作:
function lineColor()
{
for(i=0;i<data.length;i++){
if{data[i]<60}
color="red";
else{color="blue";}
}
}
函数lineColor()
{
对于(i=0;i是的,这是可能的,但是您发布的代码无法工作:
function lineColor()
{
for(i=0;i<data.length;i++){
if{data[i]<60}
color="red";
else{color="blue";}
}
}
函数lineColor()
{
对于(i=0;i在一行上获得多种颜色的方法是应用渐变作为笔划颜色。在HTML中的某个地方,可以包含一个定义了渐变的隐藏svg元素,例如:
<div style="height: 0px;">
<svg>
<defs>
<linearGradient id="theGrad" x1="0" x2="0" y1="0" y2="1">
<stop stop-color="blue" offset="0%"></stop>
<stop stop-color="blue" offset="40%"></stop>
<stop stop-color="red" offset="40%"></stop>
<stop stop-color="red" offset="100%"></stop></linearGradient>
</defs>
</svg>
</div>
注意:您也可以在脚本中创建渐变定义并将其附加到图表SVG中
然后使用“图表”小部件的“渲染”回调将渐变应用于线条:
$("#chart").kendoChart({
series: [{
name: "Grading",
color: function(point){return point.value<60 ? "red" : "blue"; },
width: 2,
size: 2,
tooltip: {
visible: true,
},
data: [81, 95, 61, 55, 59, 5, 57, 59, 66, 65, 54, 70, 72.37]}
],
seriesDefaults: {
type: "line",
missingValues: "interpolate"
},
valueAxis: {
max: 100
},
render: function(e) {
$('#chart svg g [clip-path="url(#kdef2)"] path').css("stroke", "url(#theGrad)");
}
});
$(“#图表”).kendoChart({
系列:[{
名称:“分级”,
颜色:函数(点){return point.value在一行上获得多种颜色的方法是应用渐变作为笔划颜色。在HTML中的某个地方,可以包含一个定义了渐变的隐藏svg元素,例如:
<div style="height: 0px;">
<svg>
<defs>
<linearGradient id="theGrad" x1="0" x2="0" y1="0" y2="1">
<stop stop-color="blue" offset="0%"></stop>
<stop stop-color="blue" offset="40%"></stop>
<stop stop-color="red" offset="40%"></stop>
<stop stop-color="red" offset="100%"></stop></linearGradient>
</defs>
</svg>
</div>
注意:您也可以在脚本中创建渐变定义并将其附加到图表SVG中
然后使用“图表”小部件的“渲染”回调将渐变应用于线条:
$("#chart").kendoChart({
series: [{
name: "Grading",
color: function(point){return point.value<60 ? "red" : "blue"; },
width: 2,
size: 2,
tooltip: {
visible: true,
},
data: [81, 95, 61, 55, 59, 5, 57, 59, 66, 65, 54, 70, 72.37]}
],
seriesDefaults: {
type: "line",
missingValues: "interpolate"
},
valueAxis: {
max: 100
},
render: function(e) {
$('#chart svg g [clip-path="url(#kdef2)"] path').css("stroke", "url(#theGrad)");
}
});
$(“#图表”).kendoChart({
系列:[{
名称:“分级”,
颜色:功能(点){return point.valueYes,是的;请在您的问题中添加相关代码。不要依赖我们访问外部站点来帮助您:让我们能够轻松地帮助您。我在代码中添加了逻辑。您链接的Fiddle似乎什么都不做,“datavis.min.css”是404-ing。您需要在JS Fiddle,一个nd发布准确再现问题中问题的代码。目前,您已经更新了问题,似乎更改了问题。添加信息,不要删除它(除非它完全无关和不必要)。请检查这一个是的,是的;请在您的问题中添加相关代码。不要依赖我们访问外部站点来帮助您:让我们能够轻松地帮助您。我在代码中添加了逻辑。您的链接小提琴似乎什么都没做,而“datavis.min.css”是404。您需要在JS Fiddl中重现您的问题e、 并发布准确再现问题中问题的代码。目前,您已经更新了问题,似乎更改了问题。添加信息,不要删除它(除非它完全无关且不必要)。请检查这一个。请参考我的JSFIDLE,我的问题实际上与剑道图更相关。这就是为什么我最初尝试color:function(point){return point.valueMe(虽然这是文档中的答案)。我还尝试了十六进制颜色(有和没有#
).我花了将近一个小时在这上面,通常我会说“现在是私人的”我发现FF“Found function where color is expected”中有一些错误。你可以尝试加载一个旧版本的剑道。你可以在没有JSFIDLE的情况下尝试。我已经没有主意了。提示一个follow up/新问题:将其归结为文档中的基本示例,验证它是否正确sn不起作用,将其作为stacksnippet发布,并询问为什么它不起作用(我会投赞成票)。检查这一个,我正在起作用。颜色函数
只更改标记,而不是我一直在处理的线条颜色。啊,点正在更改,这至少是一件事。下面是一个想法,假设一个人有数据:[70,50,70]
。值0和2高于阈值60,值1低于阈值。您到底想要什么?红色从值0到值1,红色从值1到值2?或红色从值0到值1,然后蓝色从值1到值2(或者反过来)?或者在经过60后更改线条(表示一条线是蓝色,然后是红色(从值0到值1),然后下一行是红色,然后是蓝色(从val_1到val_2)。我认为这一点很重要,如果只是为了进一步缩小您想要的确切范围。请参考我的jsfiddle,我的问题实际上与剑道图
。这就是为什么我最初尝试颜色:函数(点){return point.valueMe(虽然这是文档中的答案)。我也尝试了十六进制颜色(有和没有#
)。我花了将近一个小时在这上面,通常我会说“现在它是个人的”我发现FF“Found function where color is expected”中有一些错误。你可以尝试加载一个旧版本的剑道。你可以在没有JSFIDLE的情况下尝试。我已经没有主意了。提示一个follow up/新问题:将其归结为文档中的基本示例,验证它是否正确sn不起作用,将其作为stacksnippet发布,并询问为什么它不起作用(我会投赞成票)。检查这一个,我正在起作用。颜色函数
只更改标记,而不是我一直在处理的线条颜色。啊,点正在更改,这至少是一件事。下面是一个想法,假设一个人有数据:[70,50,70]
。值0和2高于阈值60,值1低于阈值。您到底想要什么?红色从值0到值1,红色从值1到值2?或红色从值0到值1,然后蓝色从值1到值2(或者反过来)?或者在经过60后更改线条(表示一条线是蓝色,然后是红色(从值0到值1),然后下一行是红色,然后是蓝色(从val_1到val_2)。我认为这一点很重要,如果只是为了进一步缩小您想要的确切范围。哇,int