看起来像nvd3,c3js等基于d3的图表库都不支持条形图的圆角。
我需要条形图中的条形如下图所示,我的项目有渐变和圆角。
在c3js中实现此目的的任何hack或配置?
答案 0 :(得分:7)
需要覆盖c3js函数generateDrawBar并提供获取圆角的逻辑,一般c3js路径元素由对应于条形四角的四个点组成。
现在你需要提供逻辑,在par的左上角和右上角有多个点,以平滑条形角。
还有几种情况: -
1)用于堆积条形图的圆角。
2)圆角为负值,条形指向下方或相反方向。
var chart = c3.generate({
bindto: '#chart',
padding: {
left: 200,
right: 100,
top: 20,
bottom: 20
},
data: {
x: 'x',
labels: true,
columns: [
['data1',40, 30, 200, 100, 400, 150, 250, 50, 100, 250,67,190,48,123,76,54,254],
['x','Travel and Hospitality','Life Science and Pharma', 'Saas and Cloud', 'Hi-tech Manufacturing', 'Software', 'Business Services', 'Govt/Public Sector', 'Energy', 'Manufacturing', 'Healthcare','Media','Internet','Retail','Biotech','Automobile','Consumer Goods','Financial Services']
],
type: 'bar'
},
axis: {
rotated: true,
x: {
type: 'category',
tick:{
multiline: false
}
}
},
legend: {
show: false
},
tooltip: {
show: false
},
bar: {
width: {
ratio: .7
},
spacing: 2
}
});