问题描述
我拥有两个不同资源(销售和费用)的数据,并且在同一张图表上显示,用户可以选择任何数据集,什么都不选择,或者全部都不选择。
问题:-:当用户取消选择任一数据集时,y轴比例值已更改(范围0-1,未选择),但我想隐藏所有其他y选择任一数据集后,-轴缩放。我还想仅显示一个y轴比例,但基于显示的数据。并且y轴刻度应在更改(选择或取消选择数据集)的情况下自动更新
这是我的chart.js
let months = ["January","February","march","April","May","June","July","August","September","October","November","December"];
let salesExpensesChartEle = $("#sales-expenses-chart");
if (salesExpensesChartEle) {
let salesData = {
label: 'Sales',data: [10,19,3,15,7,13],backgroundColor: 'rgba(37,106,206,1)',borderWidth: 0,yAxisID: "y-axis-sales",poinTradius: 0,};
let expensesData = {
label: 'Expenses',data: [12,5,6,3],backgroundColor: 'rgba(175,27,16,yAxisID: "y-axis-expenses",};
let salesExpensesChartData = {
labels: months,datasets: [salesData,expensesData]
};
let chartOptions = {
responsive: true,elements: {
point:{
radius: 0
},line :{
fill: false
}
},title: {
display: true,position: 'bottom',text: 'SALES / EXPENSES',fontSize: 14
},scales: {
xAxes: [{
display: true,barPercentage: 1,categoryPercentage: 0.6,gridLines: {
display: false
}
}],yAxes: [{
display: true,type: "linear",id: "y-axis-sales",gridLines: {
display: false
},ticks: {
beginAtZero:false,stepSize: 2
},/*scaleLabel: {
display: true,labelString: 'USD',beginAtZero: true,},*/
},{
id: "y-axis-expenses",stepSize: 2,/*max: 50,min: 0*/
}
}]
}
};
let salesExpensesChart = new Chart(salesExpensesChartEle,{
type: 'bar',data: salesExpensesChartData,options: chartOptions
});
}
如您在屏幕快照中看到的,其中显示了两个y轴刻度。
当我取消选中销售数据时,我想隐藏销售数据的y轴(从0到1以及费用y轴显示),反之亦然。
现在都选中了
,当我取消选择两个数据集时,比例值显示如下,但我也希望y轴应该是最后选择的数据集。因此,例如,最初我单击费用数据集,然后y轴比例应该是销售数据集,然后,如果我单击销售数据集(即现在都选择了),则比例应该是上次时间比例价值(即销售规模价值)。
简而言之,我需要以下内容。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)