为 ReCharts 或 d3-scale 使用自定义比例函数
Using Custom Scale function for ReCharts or d3-scale
我想使用 Recharts 显示 Weibull 分析图。对于 Weibull 分析,Y 轴刻度的公式为:
ln(-ln(1-p))
其中 p=(i-0.3)/(n+0.4),i 是观察的等级。选择此比例是为了线性化 Weibull 数据的结果图。您可以查看 Y 轴对数刻度,如下面的示例图所示。
我尝试了标准的 scaleLog() 但我需要自定义日志功能。
const y_scale = scaleLog().range([0, 100]);
此外,其中一个 recharts 问题在定义比例时显示了一个函数选项,但这似乎也不起作用。
https://github.com/recharts/recharts/issues/305
如果有人可以帮助实现自定义比例函数,那就太好了。
威布尔图示例:
Recharts 似乎添加了您在 YAxis
文档中搜索的内容
https://recharts.org/en-US/api/YAxis#scale
import { scaleLog } from 'd3-scale';
const scale = scaleLog().base(Math.E);
...
<YAxis scale={scale} />
...
我想使用 Recharts 显示 Weibull 分析图。对于 Weibull 分析,Y 轴刻度的公式为:
ln(-ln(1-p))
其中 p=(i-0.3)/(n+0.4),i 是观察的等级。选择此比例是为了线性化 Weibull 数据的结果图。您可以查看 Y 轴对数刻度,如下面的示例图所示。
我尝试了标准的 scaleLog() 但我需要自定义日志功能。
const y_scale = scaleLog().range([0, 100]);
此外,其中一个 recharts 问题在定义比例时显示了一个函数选项,但这似乎也不起作用。
https://github.com/recharts/recharts/issues/305
如果有人可以帮助实现自定义比例函数,那就太好了。
威布尔图示例:
Recharts 似乎添加了您在 YAxis
https://recharts.org/en-US/api/YAxis#scale
import { scaleLog } from 'd3-scale';
const scale = scaleLog().base(Math.E);
...
<YAxis scale={scale} />
...