问题标签 [angular-nvd3]
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.
angularjs - Angular nvD3 错误:指令 nvd3 的隔离范围定义无效
我正在尝试同时使用AngularJS、D3、NVD3和Angular-NVD3。我在这里遵循快速指南:http: //krispo.github.io/angular-nvd3/#/quickstart和此处的饼图示例:https ://github.com/krispo/angular-nvd3/blob/gh -pages/js/pieChart.js但它对我不起作用!我在控制台中收到此错误:
错误:
我一直在绞尽脑汁想弄清楚我在这里做错了什么......这是我的代码:
HTML / 玉:
模块:
控制器:
看到我做错了什么吗?
我应该只使用angularjs-nvd3-directives而不是angular-nvd3吗?
谢谢!
angularjs - ngClick 导致 D3 图表重绘
每当我单击其中一个点时,它都会导致图表更新。只有当我ngClick
对元素有指令时才会发生这种情况<nvd3>
(即使侦听器函数什么都不做)。如果我删除ngClick
,一切都很好。
我正在使用一个非常基本的nvd3
散点图angular-nvd3
。
是什么导致了这种奇怪的互动?
(这段录像的帧率很低,所以很难看,但是每次点击都会重新绘制图表,包括最上面的那个)
这是一个重现该问题的 plunker:
http://plnkr.co/edit/F0ZslBaisoHWIp0VcI8o
谢谢!
更新我已将其范围缩小到 angular-nvd3 中的手表。ngClick 的存在以某种方式导致“数据”发生变化。此行触发刷新:https ://github.com/krispo/angular-nvd3/blob/master/dist/angular-nvd3.js#L328 我的代码中没有任何内容可以更改“数据”(还验证了对象是指令之外的相同实例),并且我在 angular-nvd3.js 中看不到任何可以改变数据的东西......嗯......
更新 这是我的点击事件监听器(它是空的):
和html:
javascript - Angular-nvD3 为圆环图添加标题
我很难让标题显示为圆环图。这是我的 plunkr:http ://plnkr.co/edit/nJBpvU3YFAGaoc5BTXi7?p=preview 。以下是我提出的选项:
我尝试在两个不同的地方添加标题“Hello”,但它没有出现。谁能看到我做错了什么?
angularjs - saveSvgAsPng - getBBox 不是函数
我正在使用 exupero 的 saveSvgAsPng 库将 SVG 保存为 PNG 文件,但是在将它与 Angular-Nvd3 结合使用时遇到了问题。
我收到一条错误消息:
未捕获的类型错误:el.getBBox 不是函数
在我看来,该功能无法从我的 nvd3 元素中“抓取”SVG 元素。
我的代码如下所示:
HTML:
Javascript:
任何有关如何使这项工作正常工作的建议将不胜感激。
javascript - Angular NVD3 Y 轴将最小数据值设置为最大范围值
我将解析的 xml 数据推送到 nvd3 图表的值和标签。出于某种原因,我的一个离散条形图,即下拉菜单中“按评论排名前 5 位的 SIC”下的一个,没有做它应该做的事情。y 轴范围设置为所有点的最小 y 值,因此它使所有条形的大小相同。我已经从我制作的其他图表中复制了设置,所以我不确定出了什么问题(我不认为这可能是一个错字,我的其他离散条形图正在工作)。我尝试更改 xml 文件中的值sample4.xml
,但大小仍然保持不变。条形图,或者更确切地说是 y 轴,恢复到正确格式的唯一方法是,当我在控制器本身中手动将数值更改为“900”时,但我不能这样做,因为我需要这些值从 xml 文件中推送。我缺少的配置有问题吗?或者也许有一种方法可以强制 y 轴将最大范围值设置为数据集中的最大值?
这是我的plnkr
我尝试过在线研究,但我没有在论坛中发现任何此错误的实例。任何帮助,将不胜感激。
javascript - Nvd3.js - 向累积图表添加多个 y 轴
我需要在我的累积 Nvd3 图表中添加多个 y 轴,有人知道我需要修改库代码的哪一部分吗?
如果您自己完成了这项工作并且可以提供一个 Jsfiddle,那就更好了。
任何建议,将不胜感激。
angularjs - NVD3/AngularJS 中的 ForceY 指令
我试图弄清楚如何在我的角度应用程序的 nvd3 图表中更改我的 y 轴范围。我正在使用Krispo 的Angular-NVD3 库,并查看了他的论坛和文档以获取涉及forceY
. 在这个论坛中,Krispo 提到我需要做的就是将以下代码添加到chart
我的控制器中的数组中:
我已经尝试将它添加到我的应用程序中,但它不起作用。我还研究了可能解决我的问题的其他 nvd3/d3 指令,例如在我forcey="[5000]"
的标记中向标记添加指令<nvd3>
,但这对我也不起作用。似乎有很多不同的方法可以做到这一点,但它们似乎都没有奏效。
另外,我是否可以将其中一个值(最大值或最小值)设置为角度表达式?所以类似于以下内容:`forcey="[0,{{data.value}}]"?这基本上是我需要做的,因为在我的应用程序中,有几个报告图表,如“评论最多的 5 个 SIC”下的图表,将 y 轴最大值设置为数据集的最小值。我需要更改它,使最小 y 轴值为 0,并且对应的最大值是角度表达式,其中数据对应于最大数据值。
任何帮助,将不胜感激。
编辑:我已将angular-nvd3-directives.js
文件添加到应用程序,并将依赖项添加到应用程序。在我在网上找到的示例中,似乎也需要这个库,但是标记中的 nvd3 标记是不同的(它有类似的东西,nvd3-discrete-bar-chart
而我只有nvd3
. 我不知道为什么它不同 - 这是否意味着我的库m using 不适用于 angular-nvd3-directives?
angularjs - 角度 NVD3 y 轴刻度
我有一个创建离散条形图的应用程序。出于某种奇怪的原因(这似乎是库中的内部错误),y 轴缩放到一个数据值,该值中的整数数量最少。例如,一个数据集有(1750, 1056, 1200, 850)
. y 轴将最大范围缩放为“850”,即使其他数字都更大。我尝试使用 forceY 函数,将最大范围值设置为我的 json 中数据值的回调,但它不起作用。只有当数据集中的所有数字在值中具有相同数量的整数(即所有数百、数千等)时,问题才会自行纠正。发生了什么事,有没有办法解决它?
作为参考,这是我的plnkr。转到“按评论排名前 5 位的 SIC”报告图表,了解我的意思。“Top 5 Topics by Comments”报告图表也会出现同样的问题。如果有人对如何解决此问题有任何见解,请告诉我。提前谢谢你。
javascript - Angular Nvd3 - 的值无效属性变换="翻译(0,NaN)"
我正在使用带有 Angular Nvd3 指令的“Multichart”,并且我不断收到此错误消息:
错误:属性 transform="translate(0,NaN)" 的值无效
我不知道为什么会这样。
我的 HTML 代码如下所示:
我的 JavaScript 看起来像这样:
请帮我解决这个问题,任何建议将不胜感激。
angularjs - Firebase Angularfire 和 Angular-nvD3
我使用 firebase 作为后端数据存储。前端是 Angular。我尝试通过 Angular-nvD3.js 绘制图表。当我尝试从 firebase 读取数据时,需要时间。因此,数组为空 Array[]。然后数据来了,但图表没有更新。