我有问题的图表js,我想着色图表区域像上面的图像
我尝试从charJs Docs中查找配置,但没有匹配的配置。是否可以更改图表区背景颜色?如果可能,有人可以帮助我吗?
HTML格式
<canvas id="barChart" width="600" height="300"></canvas>
Javascript语言
var ctx = document.getElementById("barChart");
var barChart = new Chart(ctx,{
type: 'bar',
data: {
labels:["Label1","Label2","Label3","Label4"],
borderColor : "#fffff",
datasets: [
{
data: ["2","3","1","4"],
borderColor : "#fff",
borderWidth : "3",
hoverBorderColor : "#000",
backgroundColor: [
"#f38b4a",
"#56d798",
"#ff8397",
"#6970d5"
],
hoverBackgroundColor: [
"#f38b4a",
"#56d798",
"#ff8397",
"#6970d5"
]
}]
},
options: {
scales: {
yAxes: [{
ticks:{
min : 0,
stepSize : 1,
fontColor : "#000",
fontSize : 14
},
gridLines:{
color: "#000",
lineWidth:2,
zeroLineColor :"#000",
zeroLineWidth : 2
},
stacked: true
}],
xAxes: [{
ticks:{
fontColor : "#000",
fontSize : 14
},
gridLines:{
color: "#fff",
lineWidth:2
}
}]
},
responsive:false
}
});
这是我当前的代码jsFiddle
所以大家都可以尝试找到解决办法。2谢谢你帮助。
5条答案
按热度按时间4si2a6ki1#
没有内置的方法来改变背景颜色,但是你可以使用CSS.JSFiddle。
编辑
如果你想填充图表的精确区域而不是整个div,你可以写你自己的chart.js插件。在JSFiddle上试试。
t9eec4r02#
画布背景根据定义是透明的,就像任何元素一样,因此您只需要在画布中定义background-color,例如,在您的示例中,您将需要以下CSS:
JSFiddle
或HTML内联,来阐明这个想法:
i34xakig3#
这适用于最新图表
然后添加为插件
lf3rwulv4#
如果您想要为整个“画布”(而不仅仅是绘图区域)设置颜色,您可以这样做:
当使用
chart.toBase64Image()
时,这将应用于PNGv1uwarro5#
你可以通过实现这个Chartjs插件plugin/example来实现这个目的。这个插件允许你增强你的图表。例如放大或平移你的图表。但是也可以改变背景颜色。使用
setBackgroundColor(color); //updates the background color of the chart
。