【发布时间】:2015-10-13 11:23:58
【问题描述】:
我使用以下代码在 chart.js 中创建了一个条形图。但是,我想在酒吧的顶部给酒吧圆角而不是边缘的。我找不到使用 chart.js 的全局设置的任何方法。有什么办法可以达到我想要的效果吗?
var barContext = document.getElementById("canvas").getContext("2d");
var barGradientFirst = barContext.createLinearGradient(0, 0, 0, 450);
barGradientFirst.addColorStop(0, 'rgba(112,122,157, 0.1)');
barGradientFirst.addColorStop(1, 'rgba(112,122,157, 1)');
var barGradientSecond = barContext.createLinearGradient(0, 0, 0, 450);
barGradientSecond.addColorStop(0, 'rgba(151,122,208, 0.1 )');
barGradientSecond.addColorStop(1, 'rgba(151,122,208, 1)');
var barChartData = {
labels: ["High", "Med", "Low", "None"],
datasets : [
{
fillColor : barGradientFirst,
strokeColor: "rgb(112,122,200)",
data: [30, 40, 70, 90]
}, {
fillColor : barGradientSecond,
strokeColor: "rgba(220,100,80,0.8)",
data: [50, 60, 65, 20]
}]
};
new Chart(barContext).Bar(barChartData, {
responsive : true,
scaleOverride : true,
scaleBeginAtZero : true,
scaleSteps : 2,
scaleLineWidth: 3,
scaleStepWidth : 50,
scaleShowLabels : true,
scaleShowVerticalLines: false,
scaleShowHorizontalLines: false,
scaleFontSize: 30,
barValueSpacing : 40,
barDatasetSpacing : 3,
scaleLabel: "<%= value + '%' %>"
});
【问题讨论】:
-
第一个问题很好,清晰简洁。它只是缺少一些关于您已经尝试过的信息(即查看文档、阅读属性或更改其中一些)
-
好吧,我确实检查了文档here,似乎没有任何东西可以让我改变条形的形状,除了大小和宽度。由于我对 javascript 很陌生,我不知道还能告诉你什么
-
hmmm... 我之前使用过一些 Highcharts,它将图表呈现为 html 元素的集合。在那里我可以编辑各个显示元素的 css,但这里似乎并非如此。它只是显示为图像....
-
@c0d3appl3 - 可以在 chartjs 中绘制圆角矩形(没有配置,但您可以扩展现有图表来执行此操作)。有一个辅助方法,你可以在工具提示上看到它。
-
不再痛苦。这将在下一个主要版本中添加。 chartjs.org/docs/master/charts/bar#borderradius
标签: javascript charts bar-chart rounded-corners chart.js