【问题标题】:how to set color for each item in tooltip with ChartJS如何使用 ChartJS 为工具提示中的每个项目设置颜色
【发布时间】:2015-06-05 08:06:55
【问题描述】:

我尝试用ChartJS 绘制折线图。我的代码在这里jsfiddle.net/mhgyqpq0/1/

如何像这样为工具提示中的每个项目设置颜色

【问题讨论】:

    标签: javascript chart.js


    【解决方案1】:

    如果你想让tooltip的颜色和你的图例一样,你需要修改pointColoroptions。

    找到我的Fiddle ;)。

    var randomScalingFactor = function(){ return Math.round(Math.random()*100)};
    var lineChartData = {
        labels : ["January","February","March","April","May","June","July"],
        datasets : [
            {
                label: "My First dataset",
                fillColor : "rgba(255, 0, 0, 0.0)",//"rgba(220,220,220,0.2)",
                strokeColor : "red",//"rgba(220,220,220,1)",
                pointColor : "red",//"rgba(220,220,220,1)",
                pointStrokeColor : "#fff",
                pointHighlightFill : "#fff",
                pointHighlightStroke : "rgba(220,220,220,1)",
                data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
            },
            {
                label: "My Second dataset",
                fillColor : "rgba(0, 0, 255, 0.0)",//"rgba(151,187,205,0.2)",
                strokeColor : "blue",//"rgba(151,187,205,1)",
                pointColor : "blue",//"rgba(151,187,205,1)",
                pointStrokeColor : "#fff",
                pointHighlightFill : "#fff",
                pointHighlightStroke : "rgba(151,187,205,1)",
                data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
            },
            {
                label: "My Third dataset",
                fillColor : "rgba(0, 255, 0, 0.0)",//"rgba(100,100,205,0.2)",
                strokeColor : "green",//"rgba(151,187,205,1)",
                pointColor : "green",//"rgba(151,187,205,1)",
                pointStrokeColor : "#fff",
                pointHighlightFill : "#fff",
                pointHighlightStroke : "rgba(151,187,205,1)",
                data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
            }
        ]
    }
    
    var ctx = document.getElementById("canvas").getContext("2d");
    window.myLine = new Chart(ctx).Line(lineChartData, {
        legendTemplate : "<ul class=\"<%=name.toLowerCase()%>-legend\"><% for (var i=0; i<datasets.length; i++){%><li><span style=\"background-color:<%=datasets[i].strokeColor%>\"></span><%if(datasets[i].label){%><%=datasets[i].label%><%}%></li><%}%></ul>",
        bezierCurve: false,
        multiTooltipTemplate: "<%= datasetLabel %> - <%= value %>",
    });
    
    var legend = myLine.generateLegend();
    document.getElementById("legend").innerHTML = legend;
    

    【讨论】:

    • 它正在工作!文件没有提到它。我试图阅读核心代码。但是,我还没有找到工具提示中的项目颜色设置为 pointColor 的位置。感谢 Bladepianist。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    相关资源
    最近更新 更多