reactjs - Recharts - 双轴折线图上的工具提示格式化程序?
问题描述
我正在使用双轴折线图,并且试图弄清楚如何使用格式化程序功能格式化工具提示的内容。
我想要的是让我的输出读取:
2019-01-13
Price: $17.99
Sales Rank: 326,518
我目前正在使用以下代码将价格格式化为价格,但它不会改变销售排名值。我也不确定如何更改标签?
<Tooltip formatter={(value, name) => (name === "price") ? `$${value/100}` : value.toLocaleString()}/>
解决方案
只要格式化程序也接受道具,您就可以尝试更改该对象。Props 将所有数据显示在工具提示中。
const formatter = (value, name, props) => {
console.log("V", value, "N", name, "P", props); // for debug
props.payload = Object.keys(props.payload).map(k => {
return props.payload[k] = isNaN(props.payload[k]) ? props.payload[k] : format(props.payload[k]);
})
return [value, name, props]
}
虽然我不确定这是一个好的解决方案,因为对我来说它有时会在调整大小时打破图表。但也许你可以让它工作。
推荐阅读
- javascript - 当我通过 php 包含 datepicker js 和 css 文件时,include 不起作用,但如果我将所有代码放在单个 php 页面中,则可以使用
- python - 使用 Electron JS 在 Python 和 React 之间实时交换数据
- python - TypeError:“浮动”对象在嵌套列表中不可迭代
- android - 主题消息和设备令牌云功能推送通知的区别?
- javascript - 当我使用javascript更改标签的文本时,为什么querySelectorAll不是弹出函数错误?
- r - CumSum 随着时间的推移与 ggplot2 中的总计
- javascript - 如何将按钮放在标志下并使页面响应
- micronaut - 控制器的 Micronaut Spock 功能测试引发 404 错误
- javascript - 如何在 JavaScript 中克隆静态类?
- python - 这两行如何工作 x2 = x+delta[i][0] , y2 = y+delta[i][1]?