chart.js - 当父母的高度为 200px 时,chartjs 不跟随高度
问题描述
我使用 vue-chartjs 来显示一个圆环图。我希望图表跟随父母的高度(200px)。
我试图maintainAspectRatio
在选项中设置为 false,它缩小了,但仍然不适合父 div。
这是我用于图表的选项。
import { Pie } from 'vue-chartjs'
export default {
extends: Pie,
name: 'Pie_Chart',
props: ["rating"],
mounted() {
this.renderChart({
legend: { display: false },
datasets: [{
backgroundColor: ['#DAE02A', '#6D6D6D'],
data: [1000, this.$props.rating],
borderWidth: 0
}]
}, {
responsive:true,
maintainAspectRatio: false,
cutoutPercentage: 80,
legend: { display: false },
tooltips: { enabled: false },
hover: { mode: false },
})
},
}
虽然图表的宽度已经适合父 div,但是图表上方和下方仍有一些空白区域,导致高度不适合父 div。
我的问题的工作样本
在设置父生成的html的宽度之后添加maintainAspectRatio之后添加maintainAspectRatio之前
解决方案
由于您没有提供问题的工作示例,因此无法直接解决。
background-color
你想要的结果是可能的,所以这里有一个片段,显示了一个大小为 200 x 200 像素的圆环图(为了清楚起见,我添加了一个div
):
new Chart(document.getElementById("chart"), {
type: "doughnut",
data: {
datasets: [{
data: [1, 4]
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
cutoutPercentage: 80,
legend: {
display: false
},
tooltips: {
enabled: false
},
hover: {
mode: false
}
}
});
div {
background-color: #ccf;
width: 200px;
height: 200px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.js"></script>
<div>
<canvas id="chart"></canvas>
</div>
推荐阅读
- javascript - 为什么从表格单元格中获取的值在作为条件传递给嵌入对象数组循环的 IF/ELSE 语句中时不起作用?
- java - 多次连续调用同一方法而不重复方法名
- git - 如何使用用户/密码身份验证通过 go-git 克隆存储库?
- ios - 相关域和 Heroku
- json - 使用 Flutter FutureBuilder 迭代 JSON 中的对象数组
- java - 如何从 JComboBox 中的选定项目中提取特定信息?
- python-pptx - Python-pptx折线图标记透明度
- git - 拉取请求合并冲突问题 - 不显示当前主分支数据
- c# - 如何在更改另一个属性值时更新属性值 C# WPF
- c# - 如何从字符串c#中删除小数点