呼如林
2022-12-22 15:57:13
如何使 Chartist.js 上的條形寬度響應,以便條形在有更多空間“增長”時更寬。無需將數據轉換為系列。
1 回答

紅顏莎娜
TA貢獻1842條經驗 獲得超13個贊
我創建了一個插件來解決這個問題。
您可以調整0.7直到條形的寬度和每個條形之間的間距恰到好處。然后它將stroke_width根據畫布/圖表的寬度進行調整。
import Chartist from 'chartist';
const pluginDynamicBarWidth = (optionProps) => (chart) => {
Chartist.extend({}, {}, optionProps);
chart.on('draw', (data) => {
const numberOfLabels = optionProps;
const chartWidth = chart.container.clientWidth;
const canvas = chartWidth * 0.7;
const strokeWidth = canvas / numberOfLabels;
if (data.type === 'bar') {
data.element._node.style.strokeWidth = `${strokeWidth}px`;
}
});
};
export default pluginDynamicBarWidth;
添加回答
舉報
0/150
提交
取消