javascript - React-chart 不渲染 PIE 图表的图例

标签 javascript reactjs pie-chart chart.js

我正在使用 react-chart 在我们的应用程序中渲染饼图。我们想要显示饼图的图例,但找不到任何有关如何执行此操作的选项,并且 github 存储库上也没有任何帮助。

请帮忙。

最佳答案

找到问题并发布解决方案。

问题 - 该问题存在于 npm 上提供的 React-chart 版本中。可用的最新版本是 0.6.0,而 github 存储库具有 0.7.3。问题在这里react-chart0.6.0中的代码片段如下

classData[name] = function() {
   return this.state.chart[type].apply(this.state.chart, arguments);
};

请参阅我在获取最新版本后用于显示图例的代码。

组件文件

componentDidUpdate(){
   var pieChartLegend = this.refs.pieChart && this.refs.pieChart.generateLegend();
   if(this.state.chartLegend !== pieChartLegend){this.setState({chartLegend:pieChartLegend});}
}

render(){
   return(
    <div>
    <PieChart ref="pieChart" data={data} style={{height:'60%',width:'100%'}}
    options={
        {
            tooltipTemplate: "<%if (label){%><%=label%>: <%}%><%= value + ' %' %>",
            legendTemplate:"<ul class=\"<%=name.toLowerCase()%>-legend\" style=\"list-style-type: none\"><% for (var i=0; i<segments.length; i++){%><li style=\"text-align: left;\"><span style=\"color:<%=segments[i].fillColor%>\"><%if(segments[i].label){%><%=segments[i].label%><%}%></span></li><%}%></ul>"
        }
    } />
    <div style={{position:'absolute',top:'100px',left:'370px'}} dangerouslySetInnerHTML={{__html: this.state.chartLegend}} />
    </div>
    )
}

关于javascript - React-chart 不渲染 PIE 图表的图例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34885389/

相关文章:

javascript - AngularJS 使用 resolve 验证多条路由

javascript - 经典与原型(prototype)继承

reactjs - 使用 react Hook 形式验证字段数组

reactjs - Material-UI v1 : How to set one font size for all the components in material-ui v1?

javascript - 如何获取 D3.js 饼图以从 DOM 动态呈现数据

javascript - Skrollr:进度条在页面结束前很久就完成了

javascript - 使用 id_token 作为重定向 URL 中的参数的重定向用户导致身份用户为 Null

node.js - 使用 FS 文件系统的 Node、Webpack 和 React 路由

graph - 极地面积图

javascript - Highcharts 饼图图例分页错误