我第一次尝试AmCharts并且遇到一件小事。我使用以下javascript创建了一个图表:
dayGraph = new AmCharts.AmGraph();
dayGraph.valueField = "value";
dayGraph.type = "line";
dayGraph.balloonText = "<b>[[value]]</b>";
dayGraph.connect = false;
dayGraph.lineThickness = 2;
dayGraph.lineColor = "#8B0000";
dayGraph.fillColor = "#8B0000";
dayGraph.fillAlphas = 0.5;
chartCursor = new AmCharts.ChartCursor();
energyChart = new AmCharts.AmSerialChart();
energyChart.categoryField = "time";
/* energyChart.startDuration = 1;*/
energyChart.addGraph(dayGraph);
energyChart.categoryAxis.parseDates = true;
energyChart.categoryAxis.minPeriod = "mm";
energyChart.chartCursor = chartCursor;
energyChart.categoryAxis.equalSpacing = true;
它似乎运作良好,但我似乎无法找到一种方法来消除图形开始处的间隙(在00:00值之前)。第一个数据点正好在00:00,所以我希望这个点位于垂直轴上。相反,存在一个小差距。请参阅下面的图片,了解它目前的状态以及我希望它的外观。
当前图表如下所示:
我希望它看起来像这样:
答案 0 :(得分:3)
每个序列图都有categoryAxis
属性,并引用CategoryAxis
个对象。因此,您只需将其startOnAxis
属性设置为true
:
energyChart.categoryAxis.startOnAxis = true;
或者,如果您需要实例化自己的:
energyChart.categoryAxis = new AmCharts.CategoryAxis();
energyChart.categoryAxis.startOnAxis = true;
无论你的船漂浮着什么。
另外,值得注意的是,对于基于日期的类别轴,startOnAxis
仅在equalSpacing
设置为true
时才有效。