我正在使用NVD3.js并想创建以下图表:

正如你所看到的-条堆叠,双轴和分组由x轴
使用multiChart我得到:

它是堆叠的,两个轴,但不按x 轴分组。
也许我需要使用不同的图表类型 - 不是multiChart,但我没有找到两个 y 轴所在的条形图。
1)我怎样才能实现这一目标NVD3.js?
2)如果不能在 中完成NVD3.js,那么我可以正确集成哪个解决方案?
谢谢!
引用他们的网站,NVD3 Javascript 库是“尝试构建可重复使用的图表和图表组件”。为了强调图表的可重用性,它的创建者做出了几个关键决定:
他们专注于实施标准图表设计(折线图、条形图、散点图),但以灵活的交互方式实施。
他们对所有图都使用了相同的数据结构要求:
主数据数组包含多个数据系列,每个数据系列代表数据的一个逻辑分组;
每个系列都是包含两个或更多变量的单个数据对象的数组。
所有图形都具有相似的样式并重用了重要的代码段。
NVD3 库允许您创建分组条形图或堆叠条形图,甚至是在两者之间交互动画的图表。
调整该图表以创建堆叠和分组条形图并不是一项简单的任务,部分原因是数据结构会有所不同。您将需要一个三级数据结构 ( series > sub-series > datapoints, 表示groups > stacks > bars) 而不是series > datapointsNVD3 使用的两级( ) 结构。
然而,一切都没有丢失。NVD3 建立在d3 Javascript 库之上。D3 更加灵活和开放;它没有定义特定的图表类型,它定义了一种操作网页以使其与您的数据匹配的方法。您可以使用它来创建可以使用 HTML 或 SVG 绘制的任何类型的图表。但当然,这意味着要做更多的工作,因为您必须明确创建图形的所有部分,并自己做出所有设计决策!
我强烈建议,如果您想使用 d3,请从教程列表或其中一本介绍性书籍中的基础知识开始。但是,您还需要查看示例库,从中您会发现以下特别有趣的图表:
一旦您熟悉了在 d3 中构建图表,您可能想打开 NVD3 源代码,看看是否可以借用他们的一些可重用代码组件(当然,请务必遵守他们的许可条款)。但是,作为初学者,我不建议这样做——它有很多代码,并且使用了很多复杂的技术将所有部分组合在一起。