- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试用图像替换雷达图的标签,我看了看 How to add an images as labels to Canvas Charts using chart.js但这没有帮助,我已经设法从 get canvas 获取图表
const callback = [
{
id: "custom",
afterDraw: chart => {
var ctx = chart.canvas.getContext("2d");
console.log(chart) // logs the chart object
var xAxis = chart.scales['r'];}
},
];
Chartjs 3.5.0 - 雷达图 - 将标签转换为图像。我正在使用这个 https://github.com/reactchartjs/react-chartjs-2
最佳答案
这是我曾经做过的一个例子,如果你只想要一张图片,你可以在函数中取出绘制图表上标签值的部分:
const image = new Image();
image.src = "http://www.lunapic.com/editor/premade/transparent.gif";
var ctx = document.getElementById("chart").getContext("2d");
var chart = new Chart(ctx, {
type: "radar",
data: {
labels: [
['', ''],
['', ''],
['', '']
],
datasets: [{
label: "material font",
backgroundColor: "rgb(255, 99, 132, 0.5)",
borderColor: "rgb(255, 99, 132)",
borderWidth: 1,
data: [10, 20, 30],
}, ]
},
options: {},
plugins: [{
id: 'custom_labels',
afterDraw: (chart, args) => {
if (image.complete) {
const scale = chart.scales.r;
drawTextAtIndex(scale, 0, 'headset', 'test0', 10);
drawTextAtIndex(scale, 1, '3d_rotation', 'test1', 20);
drawTextAtIndex(scale, 2, 'done', 'test2', 30);
} else {
image.onload = () => chart.draw();
}
}
}]
});
function drawTextAtIndex(scale, index, icon, text) {
const offset = 36;
const r = scale.drawingArea + offset;
const angle = scale.getIndexAngle(index) - Math.PI / 2;
const x = scale.xCenter + Math.cos(angle) * r;
const y = scale.yCenter + Math.sin(angle) * r;
const ctx = scale.ctx;
ctx.save();
ctx.translate(x, y);
//ctx.rotate(angle + Math.PI / 2);
ctx.textAlign = 'center';
ctx.fillStyle = 'blue';
ctx.font = '20px material-icons'
ctx.drawImage(image, -15, -2, 30, 30);
ctx.font = "12px 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif";
ctx.fillStyle = 'black';
ctx.fillText(text, 0, -5);
ctx.restore();
}
<div class="chart">
<canvas id="chart"></canvas>
</div>
<script src="https://www.chartjs.org/dist/master/chart.js"></script>
关于reactjs - Chartjs 3.5.0 - 雷达图 - 将标签转换为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68924149/
我想尝试用 Java OpenGL 构建雷达。基本上,在该方法中,您传递玩家的当前位置、玩家面对的角度以及敌人的位置。如果敌人就在正前方,那么红点(象征敌人)应该在圆圈(雷达)的顶部,可以说是0度。如
我只是对声纳设备有一个总体的思考。声纳结果如何用数据类型表示。 目前我想出的解决方案是拥有一个 360 2D array,其值表明物体被击中时的距离,最大范围意味着那里什么也没有。这样做的问题是,对于
我有一个雷达图Js。 我不知道如何在区域内放置径向渐变。放置当前代码时,默认只取1种颜色作为background-color 当前代码: let ctx = document.getElementBy
我用在线生成器实现了 amChart。这是结果: https://live.amcharts.com/ODVhY/ 如您所见,带有值的标签仅在红牛上可见。 如何将其扩展到所有 5 个项目符号? 我的配
我需要一种灵活的方法在 ggplot2 中制作雷达/蜘蛛图。从我在 github 和 ggplot2 组上找到的解决方案,我已经走到了这一步: library(ggplot2) # Define a
我想用radare2调试程序“id3v2 -c halo test.mp3”。 如何将参数“-c halo test.mp3”传递给radare2? 我只用 rarun2 找到了一些东西,但是当我这样
我在哪里可以找到适用于 iOS 的优秀蜘蛛(雷达)图表库? (如下图) 我检查了“Core Plot”和“iOSPlot”开源项目,但这些都不支持蜘蛛图。 BR,元一。 最佳答案 在 Github 上
我是一名优秀的程序员,十分优秀!