使用“月-年”日期值创建带有时间线的 D3.js 散点图

2023-12-12

我有一个列出日期的数据集,如下所示:

var dataset = [
["1-2006", 20],
["3-2009", 90],
["11-2004", 50],
["5-2012", 33],
["4-2008", 95],
["4-2004", 12],
["7-2000", 44],
["5-2006", 67],
["6-2007", 21],
["3-2001", 88]
];

我试图将这些日期映射到 x 轴上的时间刻度,并使用 D3.js 创建一个简单的散点图。是否可以使用具有上述格式的日期值的数据集创建散点图?我尝试为我的 x 轴域创建一个最小日期和最大日期,以适合我的数据集中找到的所有日期。我不确定我是否走在正确的轨道上,并且找不到使用此日期格式的其他散点图示例。

我正在尝试使用此数据集创建某种工作示例。我是编程新手,因此非常感谢您的耐心,并且非常感谢您的帮助。这是我最终得到的示例代码的其余部分:

var w = 500;
var h = 300;
padding = 20;

var format = d3.time.format("%m-%Y"),
mindate = format(parseDate("01-2000")),
maxdate = format(parseDate("01-2015"));

var xScale = d3.time.scale()
                    .domain([mindate, maxdate])
                    .range([padding, w - padding * 2]);

var yScale = d3.scale.linear()
.domain([0, d3.max(dataset, function (d) {
return d[1];
})])
.range([0, h]);

var svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);

svg.selectAll("circle")
.data(dataset)
.enter()
.append("circle")
.attr("cx", function(d) {
    return xScale(d[0]);
       })
.attr("cy", function (d) {
return yScale(d[1]);
})
.attr("r", 2);

您有一些小错误导致您的代码无法工作:

  • mindate、maxdate、parseDate - 不起作用,我建议进行一些代码重组,请参阅下面的代码
  • 解释数据点时,应该使用 xScale(parseDate(d[0])) 而不是 xScale(d[0])

这是修改后的示例的完整代码,应该可以工作:

var w = 500;
var h = 300;
var padding = 20;

var parseDate = d3.time.format("%m-%Y").parse;
var mindate = parseDate("01-2000"),
    maxdate = parseDate("01-2015");

var xScale = d3.time.scale()
    .domain([mindate, maxdate])
    .range([padding, w - padding * 2]);

var yScale = d3.scale.linear()
    .domain([0, d3.max(dataset, function (d) {
         return d[1];
    })])
    .range([0, h]);

var svg = d3.select("body")
    .append("svg")
    .attr("width", w)
    .attr("height", h);

svg.selectAll("circle")
    .data(dataset)
   .enter()
    .append("circle")
    .attr("cx", function(d) {
        return xScale(parseDate(d[0]));
    })
    .attr("cy", function (d) {
        return yScale(d[1]);
    })
    .attr("r", 2);    

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用“月-年”日期值创建带有时间线的 D3.js 散点图 的相关文章

  • Spark日期格式问题

    我在火花日期格式中观察到奇怪的行为 实际上我需要转换日期yy to yyyy 日期转换后 日期应为 20yy 我尝试过如下 2040年后失败 import org apache spark sql functions val df Seq
  • 在 d3 中应用转换时出现错误

    我正在尝试对我在 d3 中设计的条形图应用一些过渡效果 这是我的代码 svg selectAll bar data data enter append g attr class bar append rect attr rx barRadi
  • 反转比例函数

    这对我来说很有趣 看下面的D3代码 var scale d3 scale linear domain 100 500 range 10 350 scale 100 Returns 10 scale 300 Returns 180 scale
  • 使用 matplotlib 散布条件颜色

    我有以下 Pandas Dataframe 其中 a 列代表虚拟变量 我想做的是给我的标记一个cmap jet 列值后面的颜色b 除非列中的值a等于 1 在本例中我希望它的颜色为灰色 知道我该怎么做吗 您必须标记等于 1 的值并绘制 imp
  • 在 HTML5 中使用 JS 创建内联 SVG

    我正在使用本地 HTML5 文件 它有在顶部 我在里面放了这样的东西
  • D3 v4 在同一元素上进行画笔和缩放(鼠标事件不冲突)

    我的目标是构建一个使用两者的 D3 v4 图表d3 zoom https github com d3 d3 zoom and d3 brush https github com d3 d3 brush一起 如下 当鼠标位于 x 轴上时 用户
  • 如何在java中将日期格式从YYMMDD更改为YYYY-MM-DD? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我从机器可读代码中获取日期格式为 YYMMDD 如何将其更改为 YYYY MM DD 例如我收到 871223 YYMMDD 我想把它改成
  • SVG 中三角形的圆角

    我正在尝试制作一个具有圆角的三角形 三角形将如下所示 左下角是唯一看起来相当容易制作的角 主要是因为这是一个 90 度的 转弯 该转弯是使用QSVG 中的命令具有以下参数 Q x y height x y height RADIUS从我正在
  • d3力定向布局-链接距离优先

    在 d3 中使用力导向布局 如何使链接距离成为优先事项 同时仍然保持良好的图形布局 如果我指定动态链接距离 但保留默认费用 则我的图形距离会因费用函数而发生一些变形 并且不再是准确的距离 但是 如果我删除电荷 图表将如下所示 任何建议表示赞
  • 使用 PHP 将 SVG 图像转换为 PNG

    我正在开发一个网络项目 该项目涉及动态生成的美国地图 根据一组数据为不同的州着色 这个 SVG 文件为我提供了一张很好的美国空白地图 并且很容易更改每个州的颜色 困难在于 IE 浏览器不支持 SVG 因此为了让我使用 svg 提供的便捷语法
  • 使用 CSS Grid,从任何地方滚动 div(不使用 jQuery 插件)

    div 怎样才能 scroll content https jsfiddle net blehmanade x1k3rhj7 33 可以从页面上的任何位置滚动吗 现在 scroll content仅当鼠标位于其上方时才可滚动 但是 当鼠标位
  • 如何在 R 中绘制一列与其余列的关系图

    我有一个数据集 其中 1 是时间 接下来的 14 个是幅度 我想在一张图表上散布所有大小与时间的关系 其中每个不同的列都是网格化的 分层在另一个之上 我想使用原始数据来制作这些图表 并单独制作它们 但只想执行此过程一次 数据集A 唯一的自变
  • 如何在CSS中制作一个带有边框的可调整大小的心形

    我想要制作一个心形 用户可以将其大小调整为任意宽度和高度 并且边框为 1 像素 我尝试了用纯 CSS 制作的心形 https stackoverflow com a 17386187 1404447 https stackoverflow
  • 如何在 SVG 中显示 unicode?

    以 SVG 格式存储在数据库中的信息 如果数据包含文本 它将显示为 Unicode 有必要在浏览器中正确显示 SVG 文件
  • CSS使背景图像使用字体字符

    我想使用字体字符 例如来自 font awesome 作为输入元素的背景图像
  • 悬停时为 SVG 制作动画

    我正在尝试在悬停时为 SVG 文件设置动画 默认情况下 它可以使用 svg 函数实现出色的动画效果 例如
  • 让用户渲染自己的 SVG 文件的安全隐患

    我计划让网站用户上传他们自己的 SVG 文档并使用inkscape or svg2pdf 用户要么未经身份验证 要么经历一个简单的注册过程 所以我预计会有一些黑客尝试 我可以采取哪些过滤措施来最大程度地减少安全威胁 Inkscape 似乎并
  • 双弧形

    我目前正在尝试生成 波浪形幽灵底部 形状 该形状包含两条双曲线 虽然底部的部分这个图片 http images clipartpanda com ghost clip art castle ghost clipart1 jpg我认为以更好的
  • 当以编程方式触发 d3.behavior.zoom 事件时,如何设置平移和缩放的初始值?

    下面示例中的方块是具有初始平移和比例设置的 SVG 组的一部分 单击正方形会启动缩放过渡 但过渡设置的初始值与我的默认值不同 这一点从过渡开始时的不和谐就可以明显看出 如何在以编程方式启动的缩放过渡上设置平移和缩放的初始值 var svg
  • 未捕获的类型错误:无法读取未定义的属性“albersUsa”

    以前可能有人问过这个问题 但我希望我能得到针对我遇到的问题的答案 我是 d3 的新手 我现在正在尝试绘制一个纬度 经度 当我成功完成第一个纬度 经度时 我将完成其余的工作 感谢专家的任何帮助 谢谢 尝试在特定区域绘制蜂窝基站 这是代码

随机推荐

  • C# 中根据框架版本进行条件编译

    是否有任何预处理器符号允许类似的事情 if CLR AT LEAST 3 5 use ReaderWriterLockSlim else use ReaderWriterLock endif 或其他方式来做到这一点 我认为没有任何预定义的
  • Android 支持库中的 ActionBar#setDefaultDisplayHomeAsUpEnabled 是什么?

    我知道什么setDisplayHomeAsUpEnabled确实如此 但是什么是setDefaultDisplayHomeAsUpEnabled因为我只能想知道 没有找到文档 除了正在使用之外找不到任何东西 该方法仅在Support Act
  • 审查委员会差异未上传

    我目前正在尝试使用审查板进行比较 但不断收到模糊的错误消息 Error uploading diff Your review request still exists but the diff is not attached 调试消息也没有
  • 在 PHP 中使用soap 添加 Jira 注释 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 如何在 PHP 中使用 SOAP 在 Jira 中添加注释 soapClient
  • 如何在 gnuplot 中创建 3d 相空间图?

    看这篇文章封闭但未加密 我有一些二进制数据 我想执行该文章中所示的 gnuplot 但使用我的数据 对于三维相空间图 序列 a b c d e f等可以作为空间坐标 a b b c c d b c c d d e c d d e e f 等
  • 如何在 Android OpenGL ES 中应用拖放和缩放

    我有一个问题 不知道如何添加触摸或长按来操纵 OpenGL 平移和缩放参数 目前我的编码是在手机屏幕中间显示纹理 我想用手指拖动和缩放纹理 那么如何操作OpenGL翻译和缩放参数呢 这是我的主要课程 import android app A
  • `fwrite` 在 `fread` 之后不能直接工作吗?

    我有一个使用 stdio 来读取和写入二进制文件的程序 它会缓存当前流位置 并且如果读 写偏移量已经位于所需位置 则不会进行查找 然而 一个有趣的问题出现了 那就是当读取一个字节并写入下一个字节时 它实际上并没有被写入 这是重现该问题的程序
  • ContextMenu 并以编程方式选择一个项目

    似乎没有用于以编程方式 选择 ContextMenu 项的 API 我所说的选择相当于点击向上和向下键 或将鼠标悬停在某个项目上 当显示上下文菜单时 我实际上只需要选择第一项 我试图在显示菜单时触发向下键事件 但什么也没发生 也许我错误地构
  • 使sql视图可编辑

    我已经制作了这个 sql 视图来组合一些表并且它可以工作 但它不可编辑 我无法插入 删除 编辑 数据directly在其中 但前提是我在初始表中这样做 那么有什么方法可以直接在视图中执行相同的操作 编辑数据 Create view tabl
  • 如何使用jupyter_client获取执行结果?

    我想使用 jupyter client 执行一些 python 代码并获得结果 这是我的示例代码 但我无法得到输出hello world 有人可以帮助我吗 谢谢 import jupyter client kernel manager ke
  • Jackson 和 java.sql.Time 序列化/反序列化

    考虑这个属性Hibernate 管理实体 JsonFormat pattern HH mm Column name start time private java sql Time startTime 我发布了一个JSON 对象为 Requ
  • 来自已安装应用程序的 OpenID 身份验证

    我目前正在计划一个新的网络项目 客户端将使用常规 Web 浏览器进行连接 如果是常规支持 Java 的手机 则使用 j2me 客户端进行连接 我真的很想利用 OpenID 身份验证 对于常规网络浏览器来说 事情非常简单 但是 我真的不确定已
  • gcc-4.2 失败,退出状态为 1

    我一直在寻找这个问题的答案 但找不到 所以就在这里 我正在尝试安装统一转换器使用 setup py 文件将其导入 MacOS X Lion Python 2 7 2 python setup py install 然后我得到以下错误代码 r
  • ES6类中的构造函数和原型中的构造函数之间的区别?

    ES6 类和函数原型都有一个contructor 但我想知道它们是一样的吗 让我给出更多解释 因此 我创建了一个 Cat 函数 例如 const Cat function name this name name The Cat has th
  • WPF 数据变化动画

    我正在开发一个列出一些对象的 WPF 网格 如果对象的数据发生变化 我想启动动画 下面列出了 XAML 代码的摘录
  • 在生产环境中使用 PGO(配置文件引导优化)的风险

    我有一个系统 Linux 和 C 执行密集的信号 图像处理操作 我想使用 PGO 来提高我们应用程序的性能 使用 PGO 时我应该注意哪些风险 潜在问题 单元测试 E2E测试是否足以验证PGO没有破坏任何东西 微软有一个系统 它根据使用统计
  • 永久添加到 MAC 上的 DYLD_LIBRARY_PATH 会导致 X11 错误

    我正在使用 Python 2 7 并尝试导入 graph tool 并且我的 libboost thread mt dylib 似乎位于 opt local lib 而不是 usr local lib 中 如果我启动 X11 终端并输入 e
  • 在运行时修改 Spring Security 配置

    我正在使用最新的 Spring Boot Spring Boot Starter Security 来构建简单的代理应用程序 目标是使用单一路由 方法启动应用程序 RequestMapping value api register meth
  • 在文本框控件内添加标签

    我想创建一个继承自 TextBox 的控件 其中有一个标签 其中 粘贴 到文本框的右侧 并且该文本不可由用户编辑 而是由属性设置 如何才能做到这一点 我意识到可能有很多原因导致这种用户体验是一个坏主意 但我必须这样做 改编自汉斯 帕桑特的w
  • 使用“月-年”日期值创建带有时间线的 D3.js 散点图

    我有一个列出日期的数据集 如下所示 var dataset 1 2006 20 3 2009 90 11 2004 50 5 2012 33 4 2008 95 4 2004 12 7 2000 44 5 2006 67 6 2007 21