Chart.js在页面加载时显示工具提示

丹尼斯蒙塞维奇

我正在使用http://www.chartjs.org/显示饼图,但似乎无法弄清楚如何在页面加载时显示工具提示。

$(document).on('ready page:load', function() {

    Chart.defaults.global.tooltipEvents = ['click', 'mousemove', 'window.onload'];
    Chart.defaults.global.customTooltips = function(tooltip) {
        var text = tooltip.text;
        var tooltipEl = $('#chartjs-tooltip');

        if(!tooltip) {
            tooltipEl.css({
                opacity: 0
            });
            return;
        }

        if(text) {
            var id = text.split(":")[0].replace(/ /g, '-').toLowerCase();
            $('.tip-text').addClass('hide');
            $('#'+id+'-tip').removeClass('hide').show();
        }

        // Set caret Position
        tooltipEl.removeClass('above below');
        tooltipEl.addClass(tooltip.yAlign);
        // Set Text
        tooltipEl.html(tooltip.text.split(":")[0]);
        // Find Y Location on page
        var top;
        if (tooltip.yAlign == 'above') {
            top = tooltip.y - tooltip.caretHeight - tooltip.caretPadding;
        } else {
            top = tooltip.y + tooltip.caretHeight + tooltip.caretPadding;
        }
        // Display, position, and set styles for font
        tooltipEl.css({
            opacity: 1,
            left: tooltip.chart.canvas.offsetLeft + tooltip.x + 'px',
            top: tooltip.chart.canvas.offsetTop + top + 'px',
            fontFamily: tooltip.fontFamily,
            fontSize: tooltip.fontSize,
            fontStyle: tooltip.fontStyle,
        });
    }

    var body = $('body');

    if(body.is(".home")) {
        var ctx1 = $("#custom-research-chart").get(0).getContext("2d");
        var data = [
            {
                value: 250,
                color:"#7ad3f7",
                highlight: "#7ad3f7",
                label: "GROWTH OVER TIME",
                labelColor: "white",
                labelFontSize: "16"
            },
            {
                value: 250,
                color:"#9e062e",
                highlight: "#9e062e",
                label: "INNOVATION",
                labelColor: "white",
                labelFontSize: "16"
            },
            {
                value: 250,
                color:"#577e7e",
                highlight: "#577e7e",
                label: "DEVELOPMENT",
                labelColor: "white",
                labelFontSize: "16"
            },
            {
                value: 250,
                color:"#f28d1e",
                highlight: "#f28d1e",
                label: "MARKET RESEARCH",
                labelColor: "white",
                labelFontSize: "16"
            },
        ];
        var customResearch = new Chart(ctx1).Doughnut(data);

        $('.various').fancybox({
            maxWidth    : 800,
            maxHeight   : 600,
            width       : '70%',
            height      : '70%',
            openEffect  : 'none'
        });

        $.force_appear();

        $(document.body).on('appear', '#alicia', function(e, $affected) {
            console.log("HEY")
        });
    }

});

一种快速的方法是关闭工具提示(这样,当鼠标悬停在图表上时,图表不会重绘),然后关闭动画(这样,图表在重绘时不会再次从图表上擦除工具提示)。然后,您可以手动调用将showTooltip传递给的图表方法segments

如果要保留动画,则需要在动画结束时有一个侦听器,但我似乎找不到关于该事件被触发的任何文档(它可能不存在)

var data = [{
    value: 300,
    color: "#F7464A",
    highlight: "#FF5A5E",
    label: "Red"
}, {
    value: 100,
    color: "#FDB45C",
    highlight: "#FFC870",
    label: "Yellow"
}]


//canvases
var chart = document.getElementById("chart").getContext("2d");

//charts
var myChart = new Chart(chart).Doughnut(data, {
    animation:false,
    showTooltips: false,
});
myChart.showTooltip(myChart.segments);
<script src="http://www.quincewebdesign.com/cdn/Chart.js"></script>
<canvas id="chart"></canvas>

这是一种快速的方法,因为它不能很好地控制工具提示的位置,如果饼中有很多数据,它们可能会重叠。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Chart.js在页面加载时显示工具提示

来自分类Dev

Chart.js工具提示未显示

来自分类Dev

Chart.js 2.0 - 工具提示在悬停时显示不完整的数据

来自分类Dev

使用Chart.JS显示单个工具提示?

来自分类Dev

如何在Chart.js中显示工具提示?

来自分类Dev

使用Chart.JS显示单个工具提示?

来自分类Dev

出现工具提示时,顶部的Chart.JS值消失

来自分类Dev

Chart.js:更改工具提示模板

来自分类Dev

Chart.js:着色工具提示标签

来自分类Dev

淡出页面加载器后无法显示chart.js

来自分类Dev

Chart.js v2:如何使工具提示始终显示在饼图中?

来自分类Dev

JavaScript Chart.js-自定义数据格式以显示在工具提示上

来自分类Dev

允许在Chart.js的工具提示中显示多个数据属性

来自分类Dev

对于在chart.js中数据相互重叠的那些标签,工具提示不显示

来自分类Dev

当光标位置错误时,将显示Chart.js鼠标悬停工具提示

来自分类Dev

在 Chart.js v2 圆环图工具提示中显示所有值

来自分类Dev

Chart.js - 甜甜圈显示活动段工具提示(点击外部按钮)

来自分类Dev

Google Chart HTML工具提示显示html文本

来自分类Dev

以编程方式打开和关闭Chart.js工具提示

来自分类Dev

隐藏/禁用工具提示chart.js

来自分类Dev

Chart.js-设置工具提示的Z-index

来自分类Dev

Chart.js饼图工具提示被削减

来自分类Dev

使用Chart.js缺少某些数据点的工具提示

来自分类Dev

Chart.js-向雷达图添加工具提示

来自分类Dev

Chart.js 2.0:如何更改工具提示的标题

来自分类Dev

删除自定义Chart Js工具提示颜色方块

来自分类Dev

Chart.js-使用工具提示绘制任意点

来自分类Dev

Chart.js-设置工具提示的Z-index

来自分类Dev

使用Chart.js缺少某些数据点的工具提示

Related 相关文章

  1. 1

    Chart.js在页面加载时显示工具提示

  2. 2

    Chart.js工具提示未显示

  3. 3

    Chart.js 2.0 - 工具提示在悬停时显示不完整的数据

  4. 4

    使用Chart.JS显示单个工具提示?

  5. 5

    如何在Chart.js中显示工具提示?

  6. 6

    使用Chart.JS显示单个工具提示?

  7. 7

    出现工具提示时,顶部的Chart.JS值消失

  8. 8

    Chart.js:更改工具提示模板

  9. 9

    Chart.js:着色工具提示标签

  10. 10

    淡出页面加载器后无法显示chart.js

  11. 11

    Chart.js v2:如何使工具提示始终显示在饼图中?

  12. 12

    JavaScript Chart.js-自定义数据格式以显示在工具提示上

  13. 13

    允许在Chart.js的工具提示中显示多个数据属性

  14. 14

    对于在chart.js中数据相互重叠的那些标签,工具提示不显示

  15. 15

    当光标位置错误时,将显示Chart.js鼠标悬停工具提示

  16. 16

    在 Chart.js v2 圆环图工具提示中显示所有值

  17. 17

    Chart.js - 甜甜圈显示活动段工具提示(点击外部按钮)

  18. 18

    Google Chart HTML工具提示显示html文本

  19. 19

    以编程方式打开和关闭Chart.js工具提示

  20. 20

    隐藏/禁用工具提示chart.js

  21. 21

    Chart.js-设置工具提示的Z-index

  22. 22

    Chart.js饼图工具提示被削减

  23. 23

    使用Chart.js缺少某些数据点的工具提示

  24. 24

    Chart.js-向雷达图添加工具提示

  25. 25

    Chart.js 2.0:如何更改工具提示的标题

  26. 26

    删除自定义Chart Js工具提示颜色方块

  27. 27

    Chart.js-使用工具提示绘制任意点

  28. 28

    Chart.js-设置工具提示的Z-index

  29. 29

    使用Chart.js缺少某些数据点的工具提示

热门标签

归档