You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在D3.js中实现不等刻度间距的坐标轴且不改变图表尺寸

我目前有一个基础散点图,使用线性x、y比例尺创建坐标轴,用到的代码如下:

d3.scaleLinear().domain([0.65, 0.78]).range([0, width])

以及:

d3.scaleLinear().domain([0, 1]).range([height, 0])

结合d3.axisBottom()或d3.axisLeft()生成坐标轴,最终生成的初始图表如下:
初始散点图

我现在想要修改y轴,让刻度之间的间距不等,指定刻度值为[0.01, 0.05, 0.4, 0.5, 0.9, 0.95, 0.99],同时要保持图表整体尺寸不变(不改动高度),理想的最终效果如下图所示(可忽略图中的最佳拟合线):
目标效果散点图

我之前尝试过将定义域值映射到特定高度范围的分段绘图方法,但效果不佳,还会改变图表高度。请问有没有方法可以创建刻度间距不等的坐标轴,同时保持SVG的原始形态不变?

以下是散点图使用的(x,y)原始数据:

[
    [0.651325, 0.00135],
    [0.763999, 0.99865],
    [0.663976, 0.01],
    [0.669095, 0.02],
    [0.672343, 0.03],
    [0.674786, 0.04],
    [0.676773, 0.05],
    [0.678465, 0.06],
    [0.679948, 0.07],
    [0.681276, 0.08],
    [0.682484, 0.09],
    [0.683596, 0.1],
    [0.684629, 0.11],
    [0.685597, 0.12],
    [0.68651, 0.13],
    [0.687375, 0.14],
    [0.688199, 0.15],
    [0.688987, 0.16],
    [0.689744, 0.17],
    [0.690472, 0.18],
    [0.691176, 0.19],
    [0.691857, 0.2],
    [0.692518, 0.21],
    [0.693161, 0.22],
    [0.693787, 0.23],
    [0.694398, 0.24],
    [0.694996, 0.25],
    [0.695581, 0.26],
    [0.696154, 0.27],
    [0.696717, 0.28],
    [0.69727, 0.29],
    [0.697814, 0.3],
    [0.69835, 0.31],
    [0.698879, 0.32],
    [0.699401, 0.33],
    [0.699916, 0.34],
    [0.700426, 0.35],
    [0.700931, 0.36],
    [0.70143, 0.37],
    [0.701925, 0.38],
    [0.702417, 0.39],
    [0.702904, 0.4],
    [0.703389, 0.41],
    [0.703871, 0.42],
    [0.70435, 0.43],
    [0.704827, 0.44],
    [0.705302, 0.45],
    [0.705776, 0.46],
    [0.706249, 0.47],
    [0.70672, 0.48],
    [0.707191, 0.49],
    [0.707662, 0.5],
    [0.708133, 0.51],
    [0.708604, 0.52],
    [0.709075, 0.53],
    [0.709548, 0.54],
    [0.710022, 0.55],
    [0.710497, 0.56],
    [0.710974, 0.57],
    [0.711453, 0.58],
    [0.711935, 0.59],
    [0.71242, 0.6],
    [0.712907, 0.61],
    [0.713399, 0.62],
    [0.713894, 0.63],
    [0.714393, 0.64],
    [0.714898, 0.65],
    [0.715408, 0.66],
    [0.715923, 0.67],
    [0.716445, 0.68],
    [0.716974, 0.69],
    [0.71751, 0.7],
    [0.718054, 0.71],
    [0.718607, 0.72],
    [0.71917, 0.73],
    [0.719743, 0.74],
    [0.720328, 0.75],
    [0.720926, 0.76],
    [0.721537, 0.77],
    [0.722163, 0.78],
    [0.722806, 0.79],
    [0.723467, 0.8],
    [0.724148, 0.81],
    [0.724852, 0.82],
    [0.72558, 0.83],
    [0.726337, 0.84],
    [0.727125, 0.85],
    [0.727949, 0.86],
    [0.728814, 0.87],
    [0.729727, 0.88],
    [0.730695, 0.89],
    [0.731728, 0.9],
    [0.73284, 0.91],
    [0.734048, 0.92],
    [0.735376, 0.93],
    [0.736859, 0.94],
    [0.738551, 0.95],
    [0.740538, 0.96],
    [0.742981, 0.97],
    [0.746229, 0.98],
    [0.751348, 0.99]
]

内容的提问来源于stack exchange,提问作者Bhairav Valera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 23:54:03