如何在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
相关产品推荐
相关产品推荐

