- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试实现以 x 轴作为日期格式的缩放选项。这是代码示例:
var margin = {
top: 20,
right: 20,
bottom: 40,
left: 100
},
svgWidth = 800,
svgHeight = 500,
width = svgWidth - margin.left - margin.right,
height = svgHeight - margin.top - margin.bottom;
svg = d3.select('body')
.append("svg")
.attr("style", "width: " + svgWidth + "px\; height: " + svgHeight + "px\;");
var x = d3.scaleUtc().range([0, width])
.domain([new Date("3/12/2017"), new Date("3/30/2017")]);
var y = d3.scaleBand()
.range([height, 0])
.padding(0.1)
.domain(["test"])
var xAxis = d3.axisBottom(x)
.tickFormat(d3.utcFormat("%m-%d"));
var yAxis = d3.axisLeft(y);
var zoom = d3.zoom()
.scaleExtent([1, Infinity])
.translateExtent([0, 0], [width, height])
.extent([[0, 0], [width, height]])
.on("zoom", zoomed);
var xLine = svg.append("g")
.attr("transform", "translate(" + margin.left + "," + height + ")")
.attr("class", "xAxis")
.call(xAxis)
.selectAll("text")
.style("text-anchor", "middle");
var yLine = svg.append("g")
.attr("transform", "translate(" + margin.left + ", 0)")
.attr("class", "yAxis")
.call(yAxis)
.selectAll("text")
.attr("class", "cateName")
.style("text-anchor", "end");
svg.call(zoom);
function zoomed() {
xLine.call(xAxis.scale(d3.event.transform.rescaleX(x)));
};
想法很简单,当你水平平移时,xAxis会调整位置。但是,当您单击 SVG 时,x 轴上的所有标签都会消失。我试图调查它,但似乎我的 x
在 source code是NaN
。
为什么会发生这种情况?我错过了什么吗?JSFiddle 在这里:https://jsfiddle.net/amyytnt0/1/
感谢您的帮助!
最佳答案
看来我犯了一个非常简单的错误:zoom.translateExtent()
应位于 1 个参数中,而不是 2 个参数中。所以修复应该是:zoom.translateExtent([[0, 0], [宽度, 高度]])
在这里找到答案:https://github.com/d3/d3-zoom/issues/73#issuecomment-263326469
关于javascript - D3 v4 xAxis 缩放将 x 返回为 NaN 使得 rescale(x) 无法完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43620460/
我正在创建一个显示 5 或 6 条不同线条的时间线折线图,并且希望能够放大和滚动(一旦缩放)。我使用了一些使用面积图的示例,但出于某种原因,当我第一次缩放时,我的折线图跳到右边,我丢失了一些右边的数据
我不是编码员,但有一些基本知识并且一直在编辑模板。该网站几乎就在那里 - 在桌面上它看起来不错,但在移动设备上封面图片不会按比例缩小。 我已经尝试将大小从 100%、自动和封面更改为 vw 和 vh
我想用Seam Carving,找到了ImageMagick也许是个不错的选择。 然后我从源代码安装 ImageMagick 为 this表明。 我的问题是:当我输入命令时 转换 logo_trimm
我想在 Eigen 中重新创建 Matlab 重缩放命令 https://www.mathworks.com/help/matlab/ref/rescale.html 我试过翻译但不太确定。我的 Ei
我有一个 SVG 可以有效地用作“ mask ”;它显示在另一个带有背景图像的 div 的顶部,以便图像可以透过 SVG 的未填充区域窥视。 SVG 本身响应文档的高度(而不是宽度)。到目前为止,这工
我有这个代码 testPage table td { width: 50%; }
当我尝试时: normalization_layer = layers.Rescaling(1./255) 错误信息: AttributeError: module 'tensorflow.keras
我有一个 Angular 指令,它当前在加载事件被触发时执行它的工作: .directive("testDir", [ function() { return {
当我使用 skimage.transform.rescale 将图像尺寸缩小 40% 时,数据类型从 uint8 转换为 float64。 我可以手动更改数据类型,但我不想在我的代码中进行太多手动干预
我有一个包含 9 个样本(行)和 51608 个变量(列)的数据集,每当我尝试缩放它时,我都会收到错误: 这很好用 pca = prcomp(pca_data) 但是, pca = prcomp(pc
背景 我发现很多代码示例,人们使用 rescale=1./255 预处理图像数据,或者使用 preprocessing_function 设置它到它们在 ImageDataGenerator 中使用的
在下面的代码行中: datagen = ImageDataGenerator(rescale=1./255) 我收到这个错误: TypeError: __init__() got an unexpec
问题是我有几个绝对定位的 DIV,它们具有 background-size: cover;它们的高度由 javascript 计算以填充 100% 的视口(viewport)。在每个桌面浏览器和移动
目前我正在执行以下操作来重新缩放图像: CGImageRef resizeCGImage(CGImageRef image, size_t new_width, size_t new_height)
我正在尝试实现以 x 轴作为日期格式的缩放选项。这是代码示例: var margin = { top: 20, right: 20, bottom: 40, left: 100 }, svgW
我是一名优秀的程序员,十分优秀!