如何使用Chart.js将图表的背景颜色设置为渐变

mec1mxoz  于 2022-11-07  发布在  Chart.js
关注(0)|答案(1)|浏览(266)

我正在React中尝试使用Chart.js制作一个折线图。我没有使用DOM来创建和到达画布。我可以安排背景颜色,但我只想让它成为渐变。我该怎么做呢?

我的代码如下:

  1. import React from "react";
  2. import { Line } from "@reactchartjs/react-chart.js";
  3. const data = {
  4. labels: ["day1", "day2", "day3", "day4", "day5", "day6"],
  5. datasets: [
  6. {
  7. label: "Your BMI",
  8. data: [28.3, 28, 27, 27.6, 25, 25.6],
  9. fill: true,
  10. backgroundColor: "rgba(10,10,10,.2)",
  11. borderColor: "rgba(152,222,217,0.2)"
  12. }
  13. ]
  14. };
  15. const options = {
  16. scales: {
  17. yAxes: [
  18. {
  19. ticks: {
  20. beginAtZero: true
  21. }
  22. }
  23. ]
  24. }
  25. };
  26. const LineChart = () => (
  27. <>
  28. <Line data={data} options={options} />
  29. </>
  30. );
  31. export default LineChart;

output

68bkxrlz

68bkxrlz1#

您可以使用画布的“createLinearGradient”方法。
文件:https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/createLinearGradienthttps://developer.mozilla.org/en-US/docs/Web/API/CanvasGradient/addColorStop
示例:https://codepen.io/alexgill/pen/MWbjXOP

  1. var canvas = document.getElementById('canvas');
  2. var ctx = canvas.getContext('2d');
  3. var gradient = ctx.createLinearGradient(0, 0, 0, 400);
  4. gradient.addColorStop(0, 'rgba(10,10,10,.2)');
  5. gradient.addColorStop(1, 'rgba(255,255,255,1)');
  6. const data = {
  7. labels: ["day1", "day2", "day3", "day4", "day5", "day6"],
  8. datasets: [
  9. {
  10. label: "Your BMI",
  11. data: [28.3, 28, 27, 27.6, 25, 25.6],
  12. backgroundColor : gradient,
  13. borderColor: "rgba(152,222,217,0.2)"
  14. }
  15. ]
  16. };
展开查看全部

相关问题