如果我在图表选项中包含categoryAxis
属性,我有一个拒绝正确呈现的图表。通过“正确渲染”,我的意思是绘图区域显示,标题显示,但没有任何列被渲染。
我正在使用带有GrantMStevens amChartsDirective的AmCharts序列图,因为我的项目是在Angularjs中构建的。
Here is a plunk with the categoryAxis
commented out.如果启用该行代码,图表将立即显示此行为。
此图表使用categoryField
的文本值和valueField
的数字值。我有另一个图表,它使用categoryField
的日期值和valueField
的数值,它可以正常工作。
我假设这个不是categoryField
不是导致这个的日期值这一事实之间存在一些相互作用,但我找不到允许我在{{1}上设置属性的任何属性组合}。
这就是我想要做的事情:
categoryField
有谁知道为什么这不起作用?
这是HTML:
categoryAxis: {
gridAlpha: 0.3,
gridColor: "GRAY"
},
这是JavaScript:
<html ng-app="amChartsDirectiveExample">
<head>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div>
<div ng-controller="amChartsController2" style="height: 400px; width: 600px;">
<am-chart id="mySecondChart" options="amChartOptions2"></am-chart>
</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.0/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/amcharts.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/serial.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/themes/light.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/themes/chalk.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/themes/black.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/amcharts/3.13.0/themes/dark.js"></script>
<script src="https://rawgit.com/ThumbsAlmighty/amCharts-Angular/master/dist/amChartsDirective.js"></script>
<script src="script.js"></script>
<script src="theme.js"></script>
</body>
答案 0 :(得分:2)
由于某种原因,如果您定义了categoryAxis,则angular指令会将parseDates
设置为true,如果您的图表不是基于日期的,则会中断。如果您在categoryAxis中设置parseDates: false
,它就可以使用。
categoryAxis: {
parseDates: false,
gridAlpha: 0.3,
gridColor: "#d3d3d3"
},
这是您更新的插件:http://plnkr.co/edit/TYZdR0KEOAKcbHnGdTfP?p=preview
注意,我将您的gridColor
更改为十六进制等效值。虽然命名颜色可以使用,但如果您打算使用导出插件,则需要将颜色设置为十六进制字符串。