我有下面的水平堆叠条形图。x1c 0d1x
然而,我试图在图表上添加粉红色散点(基于正确的y轴数字),但它们没有显示出来。有人能告诉我我做错了什么吗?
看起来如果我把图表改成普通的条形图,而不是水平的,点就会显示出来,但是我需要它是水平的。
下面是我的组件.ts代码:
public disproportionChartData = [
{
label: "Disproportionality",
data: [100, 40, 0, -40, -90],
type: "scatter",
fill: false,
},
{
label: "Population 1 %",
data: [-10, -40, -80, -70, -20],
},
{
label: "Population 2 %",
data: [10, 20, 30, 50, 90],
},
];
public disproportionChartLabels = [
"Type 1",
"Type 2",
"Type 3",
"Type 4",
"Type 5",
];
public disproportionChartOptions = {
responsive: true,
legend: {
position: "top",
},
title: {
display: false,
},
scales: {
xAxes: [
{
position: "top",
stacked: true,
ticks: {
callback(value) {
return Math.abs(value);
},
min: -100,
max: 100,
},
},
],
yAxes: [
{
stacked: true,
position: "left",
ticks: {
callback: function (value, index, values) {
return value < 0 ? -value : value;
},
},
},
{
stacked: true,
position: "right",
ticks: {
callback(value) {
return value;
},
min: -100,
max: 100,
},
},
],
},
};
下面是我的html代码:
<canvas
baseChart
[datasets]="disproportionChartData"
[labels]="disproportionChartLabels"
[options]="disproportionChartOptions"
[chartType]="'horizontalBar'"
>
</canvas>
更新
得到这个工作感谢user 2057925,但是,有人知道我可以添加一个标签到工具提示(以匹配类型)
例如,工具提示的标题应该是“Type 4”,而不是-90。左侧y轴上的每个类型都将有一个粉红色的点。或者,完全删除工具提示,只在每个点旁边有一个标题
1条答案
按热度按时间e5nqia271#
我认为您可以指定散点图使用的轴的
id
和type
。此外,使用xAxisID
和yAxisID
将散点数据集与这些轴相关联。AFAIK散点需要数据点来显示这些点。EDIT:添加了工具提示回调,以始终显示标签。
编辑2:添加了DataLabels插件https://github.com/chartjs/chartjs-plugin-datalabels,以显示粉红色点右侧的标签。
第一个