我正在尝试创建一个简单的可缩放图表,其中包含一个按时间缩放的x轴和一个有序的y轴(字符串数组)。该图表可以很好地处理实数y轴,但是当我使用序数y轴时,我会得到一个
Uncaught TypeError: undefined is not a function
我花了很多时间在这个问题上,并缩小了问题的范围,但就是看不到解决方案。我想知道一位D3专家是否愿意帮我解决这个问题。
对于专家阅读器,异常发生在第1344行的d3.v3.js重定标函数中。
function rescale() {
if (x1) x1.domain(x0.range().map(function(x) {
从xScaleType .linear切换到.log (或.logModulus)时出现问题。下面的代码导致绘图在X方向上消失,即仍然可以看到Y轴及其刻度,但是X轴消失了,并且在Y轴上看到了一条数据线。仅当平移到最左侧的X位置0时,才会发生此问题。如果不是零,那么就没有问题。 如果我从.log类型开始,那么一切都很好。我可以平移/缩放到位置0,没有问题,如果之前设置为.linear,则会发生问题。 要重现的代码: // Set as linear
let plotSpace = ((hostView.hostedGraph as? CPTXYGraph)?.defaultPlotSpace