Javascript ChartJS仅显示特定记号的大字体大小

Javascript ChartJS仅显示特定记号的大字体大小,javascript,chart.js,Javascript,Chart.js,我试图强调X轴上的特定值,如果它满足特定条件 例如,在我的示例中,我只想更改“蓝色”栏的字体大小。这在Chart.js中可能吗 var ctx = document.getElementById("myChart").getContext('2d'); var myChart = new Chart(ctx, { type: 'bar', data: { labels: ["Red", "Blue", "Yellow", "Green", "Purple", "O

我试图强调X轴上的特定值,如果它满足特定条件

例如,在我的示例中,我只想更改“蓝色”栏的字体大小。这在Chart.js中可能吗

var ctx = document.getElementById("myChart").getContext('2d');
var myChart = new Chart(ctx, {
    type: 'bar',
    data: {
        labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
        datasets: [{
            label: '# of Votes',
            data: [12, 19, 3, 5, 2, 3],
            backgroundColor: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(255,99,132,1)',
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    },
    options: {
        scales: {
            yAxes: [{
                ticks: {
                    beginAtZero:true
                }
            }],
            xAxes: [{
                ticks: {
                    //only show large font size for 'Blue'
                    fontSize: 16
                }
            }]
        }
    }
});

根据他们的文件看来这是不可能的。您只能使用函数执行类似大写所需标签的操作


根据他们的文件看来这是不可能的。您只能使用函数执行类似大写所需标签的操作


Chartjs没有公共api来执行此操作,但您可以修改上的内部标记,并将标签“蓝色”设置为
major:true
,然后使用标记配置选项中的样式来绘制该标签

也要谨慎使用,因为它依赖于内部实现,因此可能会在将来的版本中中断(不太可能发生,只是说说而已)

var ctx=document.getElementById(“myChart”).getContext(“2d”);
var myChart=新图表(ctx{
类型:'bar',
数据:{
标签:[“红色”、“蓝色”、“黄色”、“绿色”、“紫色”、“橙色”],
数据集:[{
标签:“#投票数”,
数据:[12,19,3,5,2,3],
背景颜色:[
"rgba(255,99,132,0.2)",,
“rgba(54162235,0.2)”,
"rgba(255,206,86,0.2)",,
“rgba(751921920.2)”,
“rgba(153102255,0.2)”,
‘rgba(255、159、64、0.2)’
],
边框颜色:[
"rgba(255,99132,1)",,
“rgba(54162235,1)”,
"rgba(255,206,86,1)",,
"rgba(751921921)",,
"rgba(153102255,1)",,
‘rgba(255、159、64、1)’
],
边框宽度:1
}]
},
选项:{
比例:{
雅克斯:[{
滴答声:{
贝吉纳泽罗:是的
}
}],
xAxes:[{
滴答声:{
尺寸:16,
主修:{
尺寸:20
}
}
}]
}
}, 
插件:[{
beforeDraw:函数({chart},选项){
图表框
.find(box=>box.id==“x轴-0”)
[美]蜱
.find(勾号=>勾号。标签==“蓝色”)
.major=正确;
}
}]
});

Chartjs没有公共api来执行此操作,但您可以在上修改内部标记,并将标签“蓝色”设置为
major:true
,然后使用标记配置选项中的样式来绘制标签

也要谨慎使用,因为它依赖于内部实现,因此可能会在将来的版本中中断(不太可能发生,只是说说而已)

var ctx=document.getElementById(“myChart”).getContext(“2d”);
var myChart=新图表(ctx{
类型:'bar',
数据:{
标签:[“红色”、“蓝色”、“黄色”、“绿色”、“紫色”、“橙色”],
数据集:[{
标签:“#投票数”,
数据:[12,19,3,5,2,3],
背景颜色:[
"rgba(255,99,132,0.2)",,
“rgba(54162235,0.2)”,
"rgba(255,206,86,0.2)",,
“rgba(751921920.2)”,
“rgba(153102255,0.2)”,
‘rgba(255、159、64、0.2)’
],
边框颜色:[
"rgba(255,99132,1)",,
“rgba(54162235,1)”,
"rgba(255,206,86,1)",,
"rgba(751921921)",,
"rgba(153102255,1)",,
‘rgba(255、159、64、1)’
],
边框宽度:1
}]
},
选项:{
比例:{
雅克斯:[{
滴答声:{
贝吉纳泽罗:是的
}
}],
xAxes:[{
滴答声:{
尺寸:16,
主修:{
尺寸:20
}
}
}]
}
}, 
插件:[{
beforeDraw:函数({chart},选项){
图表框
.find(box=>box.id==“x轴-0”)
[美]蜱
.find(勾号=>勾号。标签==“蓝色”)
.major=正确;
}
}]
});


只是出于好奇。您是否试图突出显示最大值?如果是这样,为什么不突出显示整个栏?如果你想知道怎么做,请告诉我。只是出于好奇。您是否试图突出显示最大值?如果是这样,为什么不突出显示整个栏?如果你想知道怎么做,请告诉我。
xAxes: [{
  ticks: {
    fontSize: 16,
    callback: v => v === 'Blue' ? v.toUpperCase() : v
  }
}]