使用chart.js创建两个饼图只能显示

zkure5ic  于 2022-11-06  发布在  Chart.js
关注(0)|答案(1)|浏览(195)

我用chart.js在同一个页面上创建了两个饼图,但是其中一个不能显示图形。修改javascript仍然不能显示它。我不知道发生了什么。

  1. <div>
  2. <div style="width: 300px;">
  3. <canvas id="piechart1"></canvas>
  4. </div>
  5. </div>
  6. <script>
  7. // setup
  8. const data1 = {
  9. labels: ['connect', 'disconnect'],
  10. datasets: [{
  11. label: 'Weekly Sales',
  12. data: [40,60],
  13. backgroundColor: [
  14. 'rgba(255, 26, 104, 0.2)',
  15. 'rgba(54, 162, 235, 0.2)'
  16. ],
  17. borderColor: [
  18. 'rgba(255, 26, 104, 1)',
  19. 'rgba(54, 162, 235, 1)'
  20. ],
  21. borderWidth: 1
  22. }]
  23. };
  24. // config
  25. const config1 = {
  26. type: 'pie',
  27. data1,
  28. options: {
  29. plugins:{
  30. labels:{
  31. render: 'percentage',
  32. // position:'outside'
  33. },
  34. title: {
  35. display: true,
  36. text: 'Electromechanical',
  37. padding: {
  38. top: 10,
  39. },
  40. font: {
  41. size: 18
  42. }
  43. }
  44. }
  45. },
  46. };
  47. // render init block
  48. const piechart1 = new Chart(
  49. document.getElementById('piechart1'),
  50. config1
  51. );
  52. </script>
  53. <div>
  54. <div style="width: 300px;">
  55. <canvas id="myChart"></canvas>
  56. </div>
  57. </div>
  58. <script>
  59. // setup
  60. const data = {
  61. labels: ['connect', 'disconnect'],
  62. datasets: [{
  63. label: 'Weekly Sales',
  64. data: [98,2],
  65. backgroundColor: [
  66. 'rgba(255, 26, 104, 0.2)',
  67. 'rgba(54, 162, 235, 0.2)'
  68. ],
  69. borderColor: [
  70. 'rgba(255, 26, 104, 1)',
  71. 'rgba(54, 162, 235, 1)'
  72. ],
  73. borderWidth: 1
  74. }]
  75. };
  76. // config
  77. const config = {
  78. type: 'pie',
  79. data,
  80. options: {
  81. plugins:{
  82. labels:{
  83. render: 'percentage',
  84. // position:'outside'
  85. },
  86. title: {
  87. display: true,
  88. text: 'Traffic',
  89. padding: {
  90. top: 10,
  91. },
  92. font: {
  93. size: 18
  94. }
  95. }
  96. }
  97. },
  98. };
  99. // render init block
  100. const myChart = new Chart(
  101. document.getElementById('myChart'),
  102. config
  103. );
  104. </script>

一开始以为是参数重复导致参数无法显示,修改后只显示标题,图形仍然无法显示。

0md85ypi

0md85ypi1#

问题在于如何配置第一个图表。
当您设置“data”配置时,您使用的是变量名“data1”,而不是CHART.js要求的“data”。

  1. // config
  2. const config1 = {
  3. type: 'pie',
  4. data1, // <-- WRONG!!!
  5. options: {

请使用以下选项:

  1. // config
  2. const config1 = {
  3. type: 'pie',
  4. data: data1, // <-- CORRECT!!!
  5. options: {

相关问题