以下是分组水平条形图:
http://jsfiddle.net/jmpxgufu/185/
var ctx=document.getElementById(“myChart”).getContext(“2d”);
var chart = {
options: {
scales: {
yAxes: [{ barPercentage: 1.0 }],
},
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
console.log(tooltipItem);
return data.datasets[tooltipItem.datasetIndex].label +': ' + data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index].toLocaleString();
}
}
},
responsive: true,
maintainAspectRatio: false,
animation: {
onComplete: function(animation) {
}
}
},
type: 'horizontalBar',
data: {
labels: ['Topic1'],
datasets: [
{
label: 'Something',
borderColor: 'blue',
borderWidth: 1,
backgroundColor: Color('blue').alpha(0.5).rgbString(),
data: [40],
fill: false
},
{
label: 'Something else',
borderColor: 'orange',
borderWidth: 1,
backgroundColor: Color('orange').alpha(0.5).rgbString(),
data: [17],
fill: false
}
]
}};
var myLiveChart = new Chart(ctx, chart);
如果你看一下图表,有两个条形(一个橙色和一个蓝色)与标签“Topic1”相关联。
当我悬停在橙色条上时,它说:
Topic1
Something: 40
Something else: 17
当我悬停在蓝色条上时,它说:
Topic1
Something: 40
Something else: 17
您还会注意到,因为组中有两个条,所以函数执行了两次,取我的字符串我正在返回,并形成这个分组的工具提示消息(我把console.log放在那里以显示它正在执行两次)...
我只想要我悬停在上面的那个条的数据。
当我将鼠标悬停在橙色条上时,我希望它说:
Topic1
Something else: 17
当我悬停在蓝色条上时,我想让它说:
Topic1
Something: 40
但是,我还没有弄清楚如何确定哪个是活动条(两个条中的一个)。
我错过了什么?
要获得所需的行为,您需要将工具提示模式
设置为最近的/点
:
tooltips: {
mode: 'nearest'
}
从文档中:
#最近的
获取离该点最近的项。根据到图表项中心的距离(点、条)确定最近的项。如果两个或多个项目位于同一距离,则使用面积最小的项目。如果intersect为true,则仅当鼠标位置与图形中的项目相交时才会触发此操作。这对于将点隐藏在栏后的组合图非常有用。
这是工作小提琴。
我使用MPAndroidChart条形图(分组数据集)显示两个用户的数据。它正在显示数据,但问题是,它从一开始就没有在x轴上显示数据,因此所有条形图都不可见。 阵列: 条形图: 我已经尝试了stackoverflow的答案,但没有解决我的问题。请帮助! 更新: 是否可以将标签与条形图居中?
我使用的是Chart.js2.6,我已经实现了horizontalLine插件,在条形图上显示平均值。它可以正常工作,但是当工具提示显示在与直线相交的位置时,它部分被水平线本身覆盖。我试图找出如何使工具提示在水平线上方绘制。 我知道工具提示是canvas元素的一部分,因此没有z-index属性。我怎样才能做到这一点? 下面是我使用的水平线插件。 ... 然后我使用以下命令将其添加到条形图选项中 它
我有一个这样的数据帧: 现在,我想绘制水平条形图,其中平台名称位于相应的条形图中,使其看起来像这样: 我该怎么做?
问题内容: 需要查看条形图中的条形所代表的确切值,而不是Y轴上的近似值。 怎么可能呢? 谢谢阅读! 问题答案: 在iReport 3.7.6中,您可以仅选中BarPlot属性下的“显示标签”框。 在以前的版本(3.1.4)中,我必须创建一个ChartCustomizer类。 如果您需要格式化标签中的数字(例如,设置为百分比,添加千位分隔符等),那么即使在新版本中,您也绝对需要一个ChartCust
在一个html页面中,我有一个选择菜单(a, b, c, d)和一个条形图(a, b, c, d)。我想做的是在选择菜单中选择的条形图中突出显示相应的条形图。
我有多个数据帧,我想在分组条形图视图中的同一个图上绘制它们。 这是两个非常小的数据帧,我想在同一个图中一起绘制。 数据帧是: 我想画一个像这样的图: 我尝试这样做,只绘制一个图形: 我也试过: 结果只是图片中单个数据帧的数据,而不是两个数据帧的两个数据。请注意,只有两个数据帧的标题出现在同一张图片中,数据仅来自单个独立的数据帧。