# Vega Error

**URL:** <https://discuss.elastic.co/t/vega-error/274479>\
**Category:** Kibana\
**Tags:** vega\
**Created:** [May 31, 2021, 9:25am UTC](https://discuss.elastic.co/t/vega-error/274479 "2021-05-31T09:25:04Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [May 31, 2021, 9:25am UTC](https://discuss.elastic.co/t/vega-error/274479/1 "2021-05-31T09:25:04Z")

</div>

Hello expert,  
I need your help to find the error, i tried to find out but i didnt got it. Thanks in advance...

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/2/a/2a9311941e4f2604bd76b2ce1693dad2eb6aba39.png)

` {  
$schema: [https://vega.github.io/schema/vega-lite/v5.json](https://vega.github.io/schema/vega-lite/v5.json)  
data: {  
url: {  
%context%: true  
%timefield%: timestamp

```
  index: terrena_1
  body: {
    size: 0
    aggs: {
      month_date_histogram_of_timestamp: {
        date_histogram: {field: "timestamp", calendar_interval: "month"}
        aggs: {
          sum_of_Jobsize: {
            sum: {field: "Job_Size_(GB)"}
          }
          serial_diff_of_sum_of_Jobsize: {
            serial_diff: {buckets_path: "sum_of_Jobsize", lag: 1}
          }
        }
      }
    }
  }
}

format: {
  property: aggregations.month_date_histogram_of_timestamp.buckets
}

```

}  
transform: [  
{  
window: [  
{  
op: lead  
field: key\_as\_string  
offset: 1  
as: next\_lead  
}  
]  
}

```
{
  calculate: "datum.sum_of_Jobsize.value",
  as: "sum"
}

{
  calculate: "datum.key_as_string",
  as: "lead"
}

{
  calculate: datum.serial_diff_of_sum_of_Jobsize != null ? datum.sum - datum.serial_diff_of_sum_of_Jobsize.value : 0
  as: previous_sum
}
{
  calculate: datum.serial_diff_of_sum_of_Jobsize != null ? datum.serial_diff_of_sum_of_Jobsize.value :datum.sum
  as: amount
}
{
  calculate: (datum.serial_diff_of_sum_of_Jobsize != null && datum.amount (GB > 0 ? '+' : '') + datum.amount
  as: text_amount
}
{
  calculate: (datum.sum + datum.previous_sum) / 2
  as: center
}
{
  calculate: datum.sum < datum.previous_sum ? datum.sum : ''
  as: sum_dec
}
{
  calculate: datum.sum > datum.previous_sum ? datum.sum : ''
  as: sum_inc
}

```

]  
encoding: {  
x: {  
field: key\_as\_string  
type: ordinal  
sort: null  
axis: {labelAngle: 0, title: "Months"}  
}  
}  
layer: [  
{  
mark: {type: "bar", size: 45}  
encoding: {  
y: {field: "previous\_sum", type: "quantitative", title: "Job Size"}  
y2: {field: "sum"}  
color: {  
condition: [  
{  
test: datum.serial\_diff\_of\_sum\_of\_Jobsize == null  
value: "#f7e0b6"  
}  
{test: "datum.sum \< datum.previous\_sum", value: "#f78a64"}  
]  
value: "#93c4aa"  
}  
}  
}  
{  
mark: {  
type: rule  
opacity: 1  
color: "#404040"  
strokeWidth: 2  
xOffset: -22.5  
x2Offset: 22.5  
}  
encoding: {

```
    x2: {field: "next_lead"}
    y: {field: "sum", type: "quantitative"}
  }
}
{
  mark: {type: "text", dy: -4, baseline: "bottom"}
  encoding: {
    y: {field: "sum_inc", type: "quantitative"}
    text: {field: "sum_inc", type: "nominal"}
  }
}
{
  mark: {type: "text", dy: 4, baseline: "top"}
  encoding: {
    y: {field: "sum_dec", type: "quantitative"}
    text: {field: "sum_dec", type: "nominal"}
  }
}
{
  mark: {type: "text", fontWeight: "bold", baseline: "middle"}
  encoding: {
    y: {field: "center", type: "quantitative"}
    text: {field: "text_amount", type: "nominal"}
    color: {
      condition: [
        {
          test: datum.serial_diff_of_sum_of_Jobsize == null
          value: "#725a30"
        }
      ]
      value: white
    }
  }
}

```

]  
config: {  
text: {fontWeight: "bold", color: "#404040"}  
}  
}

`

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [May 31, 2021, 11:04am UTC](https://discuss.elastic.co/t/vega-error/274479/2 "2021-05-31T11:04:53Z")

</div>

Hey @Krunal

I haven't checked it all but it seems that this

```auto
{
      calculate: (datum.serial_diff_of_sum_of_Jobsize != null && datum.amount (GB > 0 ? '+' : '') + datum.amount
      as: text_amount
    }

```

has a parenthesis that doesn't close.

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [May 31, 2021, 1:11pm UTC](https://discuss.elastic.co/t/vega-error/274479/3 "2021-05-31T13:11:19Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/c/5/c5584fbd75115d2534b89008ec1341ffe249f4bc.png)  
@Stratoula_Kalafateli Thanks

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [May 31, 2021, 1:49pm UTC](https://discuss.elastic.co/t/vega-error/274479/4 "2021-05-31T13:49:55Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/2/c/2c7d0856b044989af7402cdf394e4a68158b9414.png)  
As i have done some modification then this error came, i put field value in the "Job Size (GB)" bcoz of EsError

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [May 31, 2021, 2:05pm UTC](https://discuss.elastic.co/t/vega-error/274479/5 "2021-05-31T14:05:51Z")

</div>

I think that the error is still in the same calculate function that I posted above. To be honest I don't understand what you are trying to calculate there.

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [May 31, 2021, 2:23pm UTC](https://discuss.elastic.co/t/vega-error/274479/6 "2021-05-31T14:23:55Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/a/1/a18f92fb10fd46ea684ac95fd30dc3982dcd211c.png)  
I would like to see my data in the waterfall chart .

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [May 31, 2021, 2:29pm UTC](https://discuss.elastic.co/t/vega-error/274479/7 "2021-05-31T14:29:13Z")

</div>

Nice! I mean that it is not clear to me what you are trying to calculate here

```auto
{
      calculate: (datum.serial_diff_of_sum_of_Jobsize != null && datum.amount (GB > 0 ? '+' : '') + datum.amount
      as: text_amount
    }

```

I think that the bug.is in this function

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [May 31, 2021, 2:57pm UTC](https://discuss.elastic.co/t/vega-error/274479/8 "2021-05-31T14:57:55Z")

</div>

I solved that error  
It was my mistake .....`calculate:( datum.serial_diff_of_sum_of_Jobsize != null && datum.amount > 0 ? '+' : '') + datum.amount as: text_amount`  
Now its perfect but still there is some problem

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/c/3/c3bf5cf7846c6927c14e1bf6af6c4a4aa28ca10e.png)

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 1, 2021, 8:58am UTC](https://discuss.elastic.co/t/vega-error/274479/9 "2021-06-01T08:58:16Z")

</div>

Hello Expert,  
I have stucked again and not getting output....

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 1, 2021, 10:44am UTC](https://discuss.elastic.co/t/vega-error/274479/10 "2021-06-01T10:44:42Z")

</div>

To be honest it works for me. This is my working example by using a sample dataset:

```auto
{
  "$schema": "https://vega.github.io/schema/vega-lite/v5.json",
  "title": "Event counts from all indexes",
  "data": {
    "url": {
      "%context%": true,
      "%timefield%": "@timestamp",
      "index": "kibana_sample_data_logs",
      "body": {
          "aggs": {
      "month_date_histogram_of_timestamp": {
        "date_histogram": {
          "field": "timestamp", 
          "calendar_interval": "month"
        },
        "aggs": {
          "sum_of_Jobsize": {
            "sum": {"field": "bytes"}
          },
          "serial_diff_of_sum_of_Jobsize": {
            "serial_diff": {"buckets_path": "sum_of_Jobsize", "lag": 1}
          }
        }
      }
    },
    "size": 0
      }
    },
    "format": {"property": "aggregations.month_date_histogram_of_timestamp.buckets"}
  },
    transform: [
    {
      window: [
        {
          op: lead
          field: key_as_string
          offset: 1
          as: next_lead
        }
      ]
    }
    {
  calculate: "datum.sum_of_Jobsize.value",
  as: "sum"
}

{
  calculate: "datum.key_as_string",
  as: "lead"
}

{
  calculate: datum.serial_diff_of_sum_of_Jobsize != null ? datum.sum - datum.serial_diff_of_sum_of_Jobsize.value : 0
  as: previous_sum
}
{
  calculate: datum.serial_diff_of_sum_of_Jobsize != null ? datum.serial_diff_of_sum_of_Jobsize.value :datum.sum
  as: amount
}
{
  calculate: ( datum.serial_diff_of_sum_of_Jobsize != null && datum.amount > 0 ? '+' : '') + datum.amount 
  as: text_amount
}
{
  calculate: (datum.sum + datum.previous_sum) / 2
  as: center
}
{
  calculate: datum.sum < datum.previous_sum ? datum.sum : ''
  as: sum_dec
}
{
  calculate: datum.sum > datum.previous_sum ? datum.sum : ''
  as: sum_inc
}
  ],
  "mark": "line",
  encoding: {
    x: {
      field: key_as_string
      type: ordinal
      sort: null
      axis: {
        labelAngle: 0
        title: Months
      }
    }
  }
    layer: [
    {
      mark: {
        type: bar
        size: 45
      }
      encoding: {
        y: {
          field: previous_sum
          type: quantitative
          title: Job Size
        }
        y2: {
          field: sum
        }
        color: {
          condition: [
            {
              test: datum.serial_diff_of_sum_of_Jobsize == null
              value: "#f7e0b6"
            }
            {
              test: datum.sum < datum.previous_sum
              value: "#f78a64"
            }
          ]
          value: "#93c4aa"
        }
      }
    }
    {
      mark: {
        type: rule
        opacity: 1
        color: "#404040"
        strokeWidth: 2
        xOffset: -22.5
        x2Offset: 22.5
      }
      encoding: {
        x2: {
          field: next_lead
        }
        y: {
          field: sum
          type: quantitative
        }
      }
    }
    {
      mark: {
        type: text
        dy: -4
        baseline: bottom
      }
      encoding: {
        y: {
          field: sum_inc
          type: quantitative
        }
        text: {
          field: sum_inc
          type: nominal
        }
      }
    }
    {
      mark: {
        type: text
        dy: 4
        baseline: top
      }
      encoding: {
        y: {
          field: sum_dec
          type: quantitative
        }
        text: {
          field: sum_dec
          type: nominal
        }
      }
    }
    {
      mark: {
        type: text
        fontWeight: bold
        baseline: middle
      }
      encoding: {
        y: {
          field: center
          type: quantitative
        }
        text: {
          field: text_amount
          type: nominal
        }
        color: {
          condition: [
            {
              test: datum.serial_diff_of_sum_of_Jobsize == null
              value: "#725a30"
            }
          ]
          value: white
        }
      }
    }
  ]
    config: {
    text: {
      fontWeight: bold
      color: "#404040"
    }
  }
}

```

and the result is

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/a/e/ae467e29c5564975fbb0814a66b601ede85367c6.png)

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 2, 2021, 8:13am UTC](https://discuss.elastic.co/t/vega-error/274479/11 "2021-06-02T08:13:41Z")

</div>

Thanks @Stratoula_Kalafateli  
I copied your code and pasted in vega, I have changed the field name and index name, then also i am not getting output.

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/7/8/7893b86b1077f1bd83b09a875f771f5b7552ad54.png)

Is there any problem of version of kibana ? Bcoz I am using 7.13

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 2, 2021, 8:22am UTC](https://discuss.elastic.co/t/vega-error/274479/12 "2021-06-02T08:22:09Z")

</div>

No, because my code also works for 7.13. Have you checked your timefilter?

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/1/7/17f701c149f5ec6b5c5b588925b8c83fcedeeac0.png)

Maybe you don't have data for the selected dates.

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 2, 2021, 8:32am UTC](https://discuss.elastic.co/t/vega-error/274479/13 "2021-06-02T08:32:44Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/b/6/b645cbbfa457f510950ee94431f7e5f37a123a46.png)  
 ![image](https://us1.discourse-cdn.com/elastic/original/3X/7/d/7dd00347973e25f79b62fca89c6c4245d6c722c0.png)

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 2, 2021, 8:35am UTC](https://discuss.elastic.co/t/vega-error/274479/14 "2021-06-02T08:35:56Z")

</div>

What type is the `Job_Size_(GB)` field? Have you run the es query? Does it return data?

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 2, 2021, 8:42am UTC](https://discuss.elastic.co/t/vega-error/274479/15 "2021-06-02T08:42:03Z")

</div>

Job Size (GB) is float , yes es query working properly  
 ![image](https://us1.discourse-cdn.com/elastic/original/3X/1/9/193eca4564450eaf3071587104dfca93f37bca99.png)

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 2, 2021, 8:48am UTC](https://discuss.elastic.co/t/vega-error/274479/16 "2021-06-02T08:48:01Z")

</div>

But here I see that the field is `Job Size (GB)` and not `Job_Size_(GB)` or do you use custom labels?

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 2, 2021, 8:56am UTC](https://discuss.elastic.co/t/vega-error/274479/17 "2021-06-02T08:56:30Z")

</div>

I have not used Job\_Size\_(GB) anywhere.  
`{ "$schema": "https://vega.github.io/schema/vega-lite/v5.json", "title": "Daily Difference of Job Size ", "data": { "url": { "%context%": true, "%timefield%": "@timestamp", "index": "terrena_1", "body": { "aggs": { "day_date_histogram_of_timestamp": { "date_histogram": { "field": "timestamp", "calendar_interval": "day" }, "aggs": { "sum_of_Jobsize": { "sum": {"field": "Job Size (GB)"} }, "serial_diff_of_sum_of_Jobsize": { "serial_diff": {"buckets_path": "sum_of_Jobsize", "lag": 1} } } } },`

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 2, 2021, 9:04am UTC](https://discuss.elastic.co/t/vega-error/274479/18 "2021-06-02T09:04:19Z")

</div>

In this screenshot the field is with empty spaces  
 ![image](https://us1.discourse-cdn.com/elastic/original/3X/1/9/193eca4564450eaf3071587104dfca93f37bca99.png)

---

<div class="post-metadata">

**Author:** ![Krunal](https://avatars.discourse-cdn.com/v4/letter/k/ce7236/32.png) [@Krunal](https://discuss.elastic.co/u/Krunal)\
**Post date:** [June 2, 2021, 9:07am UTC](https://discuss.elastic.co/t/vega-error/274479/19 "2021-06-02T09:07:10Z")

</div>

yes . but i tried both Job\_Size\_(GB) and Job Size (GB) also but i think it isnot able to fetch data ..... why I didn't understand.

---

<div class="post-metadata">

**Author:** ![Stratoula\_Kalafateli](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stratoula_kalafateli/32/70923_2.png) [@Stratoula\_Kalafateli](https://discuss.elastic.co/u/Stratoula_Kalafateli)\
**Post date:** [June 2, 2021, 9:11am UTC](https://discuss.elastic.co/t/vega-error/274479/20 "2021-06-02T09:11:09Z")

</div>

I am afraid that the problem is that your field name has spaces. This is something that we do not recommend. Maybe you can try one of the suggestions here [Discover field names with spaces](https://discuss.elastic.co/t/discover-field-names-with-spaces/37467)

[Next page](https://discuss.elastic.co/t/vega-error/274479.md?page=2)
