jcu*_*nod 26 javascript chart.js
是否有可能在chartjs工具提示中获得换行符?
tooltipTemplate: "<%if (label){%><%=label%>: <%}%><%= value %>"
Run Code Online (Sandbox Code Playgroud)
我想用新行替换":".
我已经试过
,\u000D,\n和<br />无济于事.
更新:我已经更改了我现在接受的答案,chart.js即版本2.
Ale*_*lov 62
如果您使用的是2.0.0-beta2,则可以使用工具提示回调并返回字符串数组.
tooltips: {
mode: 'single',
callbacks: {
afterBody: function(data) {
var multistringText = ['first string'];
// do some stuff
multistringText.push('another string');
return multistringText;
}
}
}
Run Code Online (Sandbox Code Playgroud)
此时,无法在工具提示或轴标签上添加换行符.现在开发人员是讨论实施选项; 讨论可以找到允许换行轴标签(在github上发布).
小智 5
您可以使用工具提示页脚回调,也不会为每个列表渲染彩色正方形。
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
let label = data.datasets[tooltipItem.datasetIndex].label;
let value = data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index];
return label + ': ' + value;
},
footer: function(tooltipItems, data) {
return ['new line', 'another line'];
}
}
}Run Code Online (Sandbox Code Playgroud)
实际上,所有工具提示回调都支持多行文本,您可以label照常使用回调。默认情况下,它将数据标签显示为工具提示文本。
引用文档:
所有函数都必须返回一个字符串或字符串数组。字符串数组被视为多行文本。
示例代码:
tooltips: {
callbacks: {
label: (tooltipItem, data) => {
if (tooltipItem.index % 2)
return ['Item 1', 'Item 2', 'Item 3'];
else
return 'Single line';
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
这对我有用。只需返回一个字符串数组作为工具提示中的标签即可。
tooltips: {
callbacks: {
label: function(tooltipItem, data) {
let label = "Line 1";
let label2 = "Line 2";
return [label, label2];
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21446 次 |
| 最近记录: |