javascript - 如何消除 AmChart 中图表和 X 轴值之间的差距?
问题描述
我有一个由外部数据生成的多值 Am-chart 图(即,在根据提供的数据加载日期选择图之后。)但是加载后,我的图表显示的数据如下图所示
如图像中以黄色突出显示的那样。如何删除“日期和图表”之间的空格。还有有没有办法在这个图表中显示 x 轴的线。
下面是我的代码。
createAxisAndSeries( field, name ) {
// Add cursor
this._chart.cursor = new am4charts.XYCursor();
this._chart.colors.step = 6;
// Create axes
let dateAxis = this._chart.xAxes.push( new am4charts.DateAxis() );
dateAxis.dataFields.category = "date";
dateAxis.renderer.grid.template.location = 0;
dateAxis.renderer.minGridDistance = 40;
dateAxis.dateFormatter.inputDateFormat = "YYYY-MM-DD, HH:mm:ss";
dateAxis.periodChangeDateFormats.setKey("day", "MMM dt");
let valueAxis = this._chart.yAxes.push( new am4charts.ValueAxis() );
let series = this._chart.series.push( new am4charts.LineSeries() );
series.dataFields.valueY = field;
series.dataFields.dateX = "date";
series.tensionX = 0.8;
series.strokeWidth = 2;
series.strokeOpacity = 5;
series.yAxis = valueAxis;
series.name = name;
series.tooltipText = "{name}: [bold]{valueY}[/]";
let interfaceColors = new am4core.InterfaceColorSet();
let bullet = series.bullets.push( new am4charts.CircleBullet() );
bullet.circle.stroke = interfaceColors.getFor( "background" );
bullet.circle.strokeWidth = 2;
valueAxis.renderer.line.strokeOpacity = 1;
valueAxis.renderer.line.strokeWidth = 2;
valueAxis.renderer.line.stroke = series.stroke;
valueAxis.renderer.labels.template.fill = series.stroke;
valueAxis.renderer.grid.template.disabled = true;
}
我知道 Am-chart 有许多美化事物的属性,但我无法根据我的要求找到确切的属性。
来自专家的任何帮助。
提前致谢。
解决方案
最后我得到了答案,因为我提到有一些我无法找到的 AmChart 属性。只不过是“定位轴元素”
只需添加这些行dataAxis
dateAxis.renderer.minLabelPosition = 0.05;
dateAxis.renderer.maxLabelPosition = 0.95;
有用。:)
推荐阅读
- flutter - 从 Flutter 下载 pdf 时的权限问题
- swift - Swift 中奇怪的内存地址问题
- c++ - 如何让线程等待特定的其他线程解锁数据c ++
- google-cloud-platform - 从 Google Cloud VM、NGinx、Docker Container 向 SMTP 服务器发送电子邮件
- python - 找出数据框列是否包含单词 python
- python - Python Selenium 键无法在浏览器中按 CTRL+F 搜索
- tinymce - 如何在 tinyMCE 中删除自动完成时的触发字符?
- liskov-substitution-principle - Liskov 规则 - 澄清
- java - LocalDate.now().toString() 的实际返回类型是什么
- android - Android WorkManager 随机触发 doWork 函数