问题标签 [c3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - C3.js 从按钮单击显示工具提示
我正在使用 C3.js 绘制一些数据。我希望能够通过单击按钮显示最后一个数据点系列的工具提示,甚至在图表呈现后默认显示。有没有办法做到这一点?他们的文档有一个 tooltip.show 部分,但没有文档。
json - JSON 数据聚合的最佳实践是什么?
假设我有一个格式如下的数据集:
现在,如果我想绘制一个 D3 或 C3 图表来显示每个客户每年和每月的累计收入,我想我最终会得到这样的结果:
当然,这看起来不是很优雅,但这没什么。最糟糕的部分是基于多个维度(例如 YEAR、MONTH、CUSTOMER)的度量值(例如 REVENUE)的聚合,这对于 JSON 数据来说是一件很痛苦的事情。
我尝试编写自己的聚合函数来解决这个问题,但除了手动将值相加之外找不到任何令人满意的解决方案。谁能指导我正确的方向?你将如何聚合你的数据以适应我描述的那种图表?有没有现成的解决方案?
既然我们正在讨论这个话题,那么您将如何根据主键加入两个或多个数据集?
谢谢!
javascript - 将数据绘制到 C3 的最佳实践
我已经花了几天时间试图找出以 C3.js 满意的方式格式化数据的方法,并且我尝试了很多事情,比如逐行聚合、内部和外部连接(感谢一些你们可爱的人帮助过),以及类似的努力。我还没有找到好的方法,这都是一个很大的痛苦。我无法想象没有更简单的方法,我敢肯定我还没有弄清楚。
一个例子。我想要一个包含每年一条线的折线图。x 轴是月份(从 1 到 12),y 轴是收入。
我有这个数据:
并将其汇总,以便计算每年+每月的收入,将其转换为:
现在我知道我必须把它变成这种格式,C3 js 才能以我想要的方式使用它:
此外,我必须以某种方式在 c3 周围进行欺骗,以便让 YEAR 也显示为相应行的名称 - 在我看来,这是图表的默认功能。
如此小的转变已经让我很头疼,而且花费的时间比我想象的要多得多。关于如何做的任何帮助?此外,这种转换是否必要,或者是否有更简单的方法将两个首先提到的数据集之一集成到 c3 中而无需这种转换?你能给我一些关于如何处理这些数据的最佳实践吗?谢谢!
javascript - 是否有允许多个系列/列的 D3 Gauge?
我在 D3 或 C3js 中寻找类似的东西:
C3 中的默认仪表图将多列作为数据,但随后将它们显示在同一行上,因此它们相互覆盖。
c3 - 渲染 x 的负浮点值时 c3.js 工具提示出现问题
我正在使用 c3.js 创建图表,这是我发现的一个问题。如果您有一个带有负浮点 x 值的数据点,则工具提示会将此值四舍五入为最接近的整数。
您可以尝试仅通过更改此示例中的数据来执行此操作。只需将其中一个 x 值更改为负浮点值,然后将鼠标悬停在该点上并注意工具提示报告的 x 值。
有没有办法解决这个问题,或者有没有人遇到过类似的问题?
javascript - C3触发动画并为路径分配id
我正在使用 c3.js,它是一个“基于 D3 的可重用图表库”。我还为带有饼图的圆环图创建了自己的图例。我想链接图例和图表,这样如果我单击图例项,它将在图例div
和甜甜圈/饼图上的相应path
元素上触发动画,反之亦然(单击饼图/甜甜圈路径将触发两者都有动画)。我知道您可以为 c3 项目设置 onclick 事件侦听器,但没有任何 id 我无法识别相应的 legend div
。另外,如果我在图例div
s 上设置了一个点击处理程序,我将不知道对应的path
,我也不知道如何触发 c3 的内置点击动画。
编辑:我发现您可以触发选定状态(http://c3js.org/reference.html#api-select),但您必须向它传递一个 id。在我的图表上,没有要传入的 ID。有没有办法为每个数据点设置自定义 ID?
javascript - C3 / D3:如何在分组条(垂直线延伸到水平条)顶部添加分段基准覆盖?
我是这个 D3/C3 的新手,并且有一个项目在有限的时间内完成,我想知道如何使用 C3 在水平条的顶部添加垂直阈值,如下图所示/D3 图表库。
除了那部分外,我已经让它看起来很漂亮。任何输入都会有所帮助(如果它本来是有帮助的)。
javascript - 页面失去对 jqgrid onselect 的关注并专注于生成的图表
我有一个分析模块,它基于 JQgrid 的引导 3、角度、网格和 C3 的图表。问题是当我转到网格并在 JQgrid 中选择一行时,它会失去焦点并滚动回生成新图形的顶部,
单击网格时的焦点:
每次在选择行时更改图表时,您都必须向下滚动。
在选择网格失去焦点并开始关注图表后:
当您选择一行时,它会一直发生,并且每次都返回以选择一行会变得很烦人。生成图表时有没有办法不松散焦点。我无法创建 JSFiddle,因为该页面是动态的并且附加了许多嵌套代码和 javascript 文件。
问题的GIF:-
Jqgrid 配置:- jqgrid 配置 pastebin
c3 配置:- c3 图表粘贴箱
c3 - c3.js 散点图示例和 tsv 文件
这里是 C3 的新手。我正在尝试制作一个简单的散点图。我认为这会起作用(c3_test.csv 是来自样本的相同数据集。)
但看起来这不是要走的路。这行得通,
但是,了解如何使第一种方法也提供所需的输出会很有帮助。另外,我正在尝试加载 tsv 文件;基于此,我认为我可以只使用 url 接口,但是,这似乎不起作用。同样,我也将不胜感激。我正在使用https://cdnjs.cloudflare.com/ajax/libs/c3/0.4.10/c3.js。我的 csv(tsv) 文件如下。