问题描述
当轴类型为“时间”时,无法向xAxis添加垂直标记。我想添加标记来表示时间轴上不同日期的事件。
我尝试过的样品, https://jsfiddle.net/msbasanth/ez3cgm5d/3/
当我将xAxis类型设为“ category”或“ value”时,我可以添加标记行而不会出现问题。这就是我在xAxis中设置markerLine的方式。
xAxis: {
type: "time",axisTick: {
show: false,},markLine: {
data: [
[
{
name: 'Mark line between two points',x: 100,y: 100
},{
x: 500,y: 200
}
]
],}
}
https://jsfiddle.net/msbasanth/2g614wzu/
在此示例中,我可以看到添加到xAxis的标记(类型:“时间”),但看起来很复杂,并且可以看到它们具有近似的时间轴。我们是否可以直接在指定日期值的时间xAxis中设置标记?
解决方法
echarts中的标记线不绑定到轴,而是绑定到系列。
使用xaxis类型作为时间,可以通过在markline配置中将xAxis值指定为日期字符串来创建垂直markLines。
请参考以下代码,以实现垂直标记线
series: [
{
data: data,type: "line",markLine: {
data: [
[
{ name: "Imp Day 01",xAxis: '1998-01-01',yAxis: 0 },{ name: "end",yAxis:'max' },],[
{ name: "Imp Day 02",xAxis: '1998-08-01',yAxis: 0 },]
],},lineStyle: {
color: "rgba(242,145,72,1)",]