【发布时间】:2021-08-19 03:01:42
【问题描述】:
我正在使用react chart js来显示折线图。
我的渐变背景在调整窗口大小时被破坏,变成黑色:
如何通过改变屏幕大小使其工作?
这是创建和生成渐变的函数:
export const getGradientBackground = (canvas) => {
const ctx = canvas.getContext('2d');
const gradient = ctx.createLinearGradient(
canvas.width / 2,
0,
canvas.width / 2,
canvas.height
);
gradient.addColorStop(0.1, 'rgba(0, 145, 148, 0.15)');
gradient.addColorStop(0.2, 'rgba(0, 145, 148, 0.15)');
gradient.addColorStop(0.3, 'rgba(0, 145, 148, 0.15)');
gradient.addColorStop(0.4, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(0.5, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(0.6, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(0.7, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(0.8, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(0.9, 'rgba(255, 255, 255, 0.15)');
gradient.addColorStop(1.0, 'rgba(255, 255, 255, 0.15)');
ctx.fillStyle = gradient;
ctx.fillRect(10, 10, 200, 100);
return gradient;
};
欢迎评论
【问题讨论】:
-
如果您有一个可重现的示例,例如 stackblitz 之类的,这可能是一个简单的补救措施,但在示例中查看问题以进行故障排除将有很长的路要走。我认为这是你的
fillRect声明的罪魁祸首,你可以使用chartArea接口like this -
你在用这个包吗? npmjs.com/package/react-chartjs-2
-
嗨 @MarkJames,类似于 Chris 的请求,如果能看到一个我们可以修补以开始工作的实时工作示例将非常有帮助,以确保我们为该问题提供真正有效的解决方案你正在经历。
标签: javascript css reactjs canvas charts