对 d3.js 堆积条形图进行排序

2023-12-05

目前这个堆积条形图根据每个条形的总计从左到右排序。我还如何对每个单独的条形图进行排序,而不是按键对每个单独的条形图进行排序(即 5 岁以下位于底部,65 岁及以上位于顶部),而是按值(最大)对每个单独的条形图进行排序位于底部,最小位于顶部)。

例如:

目前CA栏是这样堆叠的(从下到上)

CA,2704659,4499890,2159981,3853788,10604510,8819342,4114496

我希望它像这样堆叠(从下到上)

CA,10604510,8819342,4499890,4114496,3853788,2704659,2159981

需要明确的是,我需要能够在客户端执行此操作(即不能选择更改原始数据的顺序或格式)。


您链接到的条形图示例直接从 CSV 获取值的顺序(通过色阶域)。实际的堆叠是在这一行完成的:

d.ages = color.domain().map(function(name) { return {name: name, y0: y0, y1: y0 += +d[name]}; });

堆叠顺序取决于名称返回的顺序color.domain()。要更改顺序,您所需要做的就是对获得的值进行排序。要按各个段的值分别对每个条形图进行排序,您可以使用

var order = color.domain().map(function(d) { return d; })
                 .sort(function(a, b) { return +d[b] - +d[a]; });

这从色标域中获取名称,然后按值降序对它们进行排序,这些值在sort功能。这个新数组order然后用于堆叠:

d.ages = order.map(function(name) { return {name: name, y0: y0, y1: y0 += +d[name]}; });

其余代码保持不变。完整演示here.

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

对 d3.js 堆积条形图进行排序 的相关文章

  • 在 javascript/jquery 中将光标更改为等待

    当调用函数时 如何让光标更改为此加载图标以及如何将其更改回 javascript jquery 中的普通光标 在你的 jQuery 中使用 body css cursor progress 然后又恢复正常 body css cursor d
  • React js Stripe 结账不起作用

    我正在尝试在 React js 应用程序中呈现条带结账默认表单
  • 每 3 秒重复一次动画

    我正在使用 WOW js 和 animate css 现在我正在将 CSS 运行到 Infinite 我想知道如何让我的课程运行 3 秒停止并再次开始到无限 My html img src images fork png class for
  • 尝试将布尔 C# 变量传递给 javascript 变量并将其设置为 true

    在我的 aspx 页面中 我将布尔变量 C 传递给需要布尔类型的 javascript 函数 但遇到了问题 但是 C 变量返回 True 而 javascript 不喜欢大写 myjavascript 如果我将 c 变量转换为字符串 那么我
  • Web 串行 API - 未捕获(承诺中)DOMException:无法打开串行端口/所需成员 baudRate 未定义

    下面的代码可以在我的 Xubuntu 机器上运行 但现在我在 Kubuntu 上 它不再工作了 它不会打开端口 Arduino IDE 工作正常 可以向开发板写入代码 并且我可以在 Chrome 中选择设备 Arduino Uno 但当我尝
  • TypeError: props.render 不是一个函数(React hook 形式)

    我将方法作为我用react hook form制作的形式的道具传递 当从react hook form添加控制器时 它给了我 TypeError props render不是一个函数 我在网上找不到任何解决方案 因此感谢任何帮助 impor
  • 我想检查 $('#td1').text() === "x" 是否?

    我想检查innerHtml是否有X或O 所以我不能再次添加任何其他东西 但它不起作用 添加检查代码后它就停止了 我在这里尝试做一个简单的XO游戏来更熟悉javascript和jquery 我也不确定是否可以用 jQuery 做到这一点
  • jQuery AJAX 调用 Java 方法

    使用 jQuery AJAX 我们可以调用特定的 JAVA 方法 例如从 Action 类 该 Java 方法返回的数据将用于填充一些 HTML 代码 请告诉我是否可以使用 jQuery 轻松完成此操作 就像在 DWR 中一样 此外 对于
  • 使用 Angular 下载具有动态 src 的脚本

    Angular 提供了通过动态名称动态加载模板的方法ng include 该部分中的内联 JS 和 CSS 可以正常加载 但没有一个好的方法来下载带有动态 url 的脚本 我们需要下载脚本 相对于调用它们的 html 部分的路径 即我们有一
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 使用 KnockoutJs 映射插件进行递归模板化

    我正在尝试使用以下方法在树上进行递归模板化ko映射 插入 http knockoutjs com documentation plugins mapping html 但我无法渲染它 除非我定义separate每个级别的模板 在以下情况下
  • MVC 在布局代码之前执行视图代码并破坏我的脚本顺序

    我正在尝试将所有 javascript 包含内容移至页面底部 我正在将 MVC 与 Razor 一起使用 我编写了一个辅助方法来注册脚本 它按注册顺序保留脚本 并排除重复的内容 Html RegisterScript scripts som
  • Laravel 中只向登录用户显示按钮

    如果我以 John 身份登录 如何才能只显示 John 的红色按钮而不显示 Susan 的红色按钮 测试系统环境 Win10 Laravel5 4 Mysql5 7 19 table class table table responsive
  • HTML 离线应用程序缓存,列出下载的文件

    作为我正在构建的离线 Web 应用程序的加载屏幕的一部分 使用缓存清单 http developer apple com library safari documentation iPhone Conceptual SafariJSData
  • 模块构建失败(来自 ./node_modules/babel-loader/lib/index.js)Vue Js

    我从 GitHub 下载了一个我和我的朋友正在开发的项目 但是当我尝试运行时 npm run serve 我收到这个错误 src main js 中的错误 Module build failed from node modules babe
  • JQuery 图像上传不适用于未来的活动

    我希望我的用户可以通过帖子上传图像 因此 每个回复表单都有一个上传表单 用户可以通过单击上传按钮上传图像 然后单击提交来提交帖子 现在我的上传表单可以上传第一个回复的图像 但第二个回复的上传不起作用 我的提交过程 Ajax 在 php 提交
  • 如何仅在最后一个
  • 处给出透明六边形角度?
  • 我必须制作这样的菜单 替代文本 http shup com Shup 330421 1104422739 My Desktop png http shup com Shup 330421 1104422739 My Desktop png
  • 如何获取浏览器视口中当前显示的内容

    如何获取当前正在显示长文档的哪一部分的指示 例如 如果我的 html 包含 1 000 行 1 2 3 9991000 并且用户位于显示第 500 行的中间附近 那么我想得到 500 n501 n502 或类似的内容 显然 大多数场景都会比
  • 双枢轴快速排序和快速排序有什么区别?

    我以前从未见过双枢轴快速排序 是快速排序的升级版吗 双枢轴快速排序和快速排序有什么区别 我在 Java 文档中找到了这个 排序算法是双枢轴快速排序 作者 弗拉基米尔 雅罗斯拉夫斯基 乔恩 本特利和约书亚 布洛赫 这个算法 在许多数据集上提供

随机推荐

  • Word 可以直接从 Web 服务器编辑文档而不需要 Sharepoint 吗?

    我有一个看起来很简单的用例 但在谷歌搜索后我找不到解决方案 我在 FTP 服务器上有一些 Word 文档 我希望能够创建一个链接 将它们下载到 Word 中 然后允许将保存的更改发送回 FTP 服务器 问题是我只能让 Word 从 FTP
  • Android Studio NDK 错误,无法找到 GLES3/gl3.h,尽管它存在

    我正在尝试在 Android Studio 上制作一个使用 NDK 和 OpenGL ES 3 0 的应用程序 当我 include 时 IDE 在我输入时会自动完成 我认为这是一个标志 意味着 IDE可以找到它 但是 我收到错误 错误 2
  • python 使用带请求的 multipart/form-data 为 POST 设置边界

    我想使用请求发送文件 但服务器使用固定边界设置 我只能发送文件 但requests模块创建一个随机边界 我该如何覆盖它 import requests url http xxx xxx com uploadfile php fichier
  • 是否可以提供一种将对象转换为角度模板字符串的隐式方法?

    假设我有一些具有相同原型的对象 并且我想在 Angular 模板中自定义它们的显示 我知道我可以创建自己的过滤器 然后像这样使用它 p anObjectOfProtoP myCustomFilter p 或附加到 scope 的函数 p m
  • 外键参考复合主键

    该数据库将存储有关硬件设备及其收集的数据的信息 我创建了一个设备表来存储可用的硬件设备 CREATE TABLE IF NOT EXISTS devices deviceID int 10 unsigned NOT NULL AUTO IN
  • 新窗口句柄在 IE 中消失,无法切换到新窗口

    我在 Internet Explorer 10 中使用最新版本的 Selenium 2 37 0 和 C 使用最新的 32 位 InternetExplorerDriver 2 37 0 登录网页 单击打开新窗口的按钮 然后然后将焦点更改到
  • CSS渐变产生虚线

    我需要打印 textarea 内容 用户输入 我只是使用 css 渐变在文本下方生成线条 下面的 css 对我来说很有效 linedText color 000000 line height 24px background color ff
  • C# 线程安全与 get/set

    这是 C 的详细问题 假设我有一个带有对象的类 并且该对象受锁保护 Object mLock new Object MyObject property public MyObject MyProperty get return proper
  • 画布中的模糊 svg

    为什么 SVG 在画布中无法正确缩放 全是像素化且模糊 我究竟做错了什么 我想要的只是 SVG 图像无论画布大小如何都能保持其纵横比 并且不会变得模糊 var canvas document getElementById screen ct
  • 根据填充颜色索引删除行

    我正在尝试删除范围内的所有行A7 AI300包含黄色填充的单元格 颜色索引 6 我有一些代码将删除包含该颜色的所有行 但我遇到的问题是它正在尝试运行整个工作表的代码并将冻结我的工作簿 我正在尝试插入一个范围以加快计算速度 谁能告诉我如何插入
  • 每个 Pandas 数据框行的词频

    我正在尝试找出如何获取每个数据帧行中最常见的单词 比如说前 10 个最常见的单词 我的代码可以获取整个 DF 中最常见的单词 但现在我需要更精细 import pandas as pd import numpy as np df1 pd r
  • 实体框架 4 未关闭 sql server 2005 profiler 中的连接

    我第一次在 ASP net 应用程序中使用实体框架 4 我想确保数据库连接在离开using语句后关闭 但是 在SQL Server 2005分析器中 我在离开using时看不到连接注销 只能看到输入时的登录 例如 我从一个空白的 asp n
  • 在 Matlab 中生成矩阵的所有可能组合

    知道该矩阵的元素只能是 0 或 1 如何生成 N M 矩阵的所有可能值 例如 如果我想要一个 2 2 矩阵 我们会得到 16 个具有不同可能组合的矩阵 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 0 0 0 1 1 等 Us
  • 绝对真实的居中背景图像

    我有一个网站 其中居中的背景图像在主页动画中起着至关重要的作用 背景会一直居中 直到浏览器窗口无法适应网站的宽度 此时背景会左对齐 这是我的身体代码 body line height 1 margin 0px auto padding 0p
  • Kivy 错误:[严重] [应用程序] 无法获取窗口,中止

    我看到的针对这个 Kivy 错误的所有解决方案对我来说都不起作用 现在已经过去两周多了 但我所有的努力都白费了 我使用 python 3 6 4 kivy 1 10 1 pycharm 作为我的 IDE 和 Windows 10 这是错误代
  • Angular – 通过提交表单将组件的新实例添加到显示中,动态加载同一组件的多个实例

    问题更新链接 Problem 我试图动态加载同一组件的多个实例 当用户提交表单时 新组件会添加 加载到屏幕上 其背后的想法是 用户可以提供表单的详细信息 然后将其显示在所创建的组件的特定实例上 我最初的想法是拥有某种数据结构 例如键对值的数
  • JOOQ:使用字符串获取表和列?

    您好 我正在将 JOOQ 与 Spring Boot 结合使用 想知道是否有办法获取表及其列及其名称字符串 例如 我希望能够通过执行以下操作来获得一张桌子 someObject getTable user 然后使用该 get 方法的结果 我
  • Vagrant 错误:无法在 Linux 来宾中挂载文件夹

    我对 Vagrant 共享文件夹有一些问题 我的基本系统是 Ubuntu 13 10 桌面 我不明白为什么我会出现此错误 是配置不正确吗 是 NFS 问题还是 Virtualbox Guest Additions 问题 我尝试过使用不同的许
  • 当用户尝试在 vb6 中打开新实例时返回到已打开的应用程序

    假设用户将我的 Visual Basic 应用程序最小化到任务栏通知图标 现在我希望当用户打开一个新实例时 旧实例应该恢复 通常 创建单实例应用程序的策略是在应用程序初始化中添加一些代码来确定实例是否已在运行 如果是 它会获取主窗口的句柄
  • 对 d3.js 堆积条形图进行排序

    目前这个堆积条形图根据每个条形的总计从左到右排序 我还如何对每个单独的条形图进行排序 而不是按键对每个单独的条形图进行排序 即 5 岁以下位于底部 65 岁及以上位于顶部 而是按值 最大 对每个单独的条形图进行排序位于底部 最小位于顶部 例