为 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} />
...