# XY Chart Question - Production vs Target

**URL:** <https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [April 28, 2025, 2:03am UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618 "2025-04-28T02:03:55Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 28, 2025, 2:03am UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/1 "2025-04-28T02:03:56Z")

</div>

Hello there!

I want to create a view using the XY Chart component. The goal is to have a selectable time frame (weekly, monthly, yearly, etc.) and retrieve the production and target values for the machines within that time frame. I would like to display the information as shown below, with the filled columns representing production and the orange line representing the target for comparison.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/0/e085b31809e8e768b4b00abc2d7e34490ee5e573.png)

I dynamically create the series for the chart based on the selected time frame and the data returned. The series reference production values on the Y-axis and the time frame on the X-axis. However, I haven't been able to properly add the target values for each machine. I can add the target value and change its representation showing it as a line instead of a filled column, but I lose consistency because the target for a specific machine does not align correctly with that machine’s production data.

If anyone has experience with the XY Chart , could you please help me? Thank you!

---

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 28, 2025, 3:10am UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/2 "2025-04-28T03:10:01Z")

</div>

Little update: this is as far as I got:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/7/4/7464370a48f42b6d942338d031d0e2b88b4737b5.png)

But I can't get the step lines to center over their corresponding machine's column...

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [April 28, 2025, 7:46am UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/3 "2025-04-28T07:46:21Z")

</div>

You've tagged the question as `perspective` but the post says the chart is in a report and that would be related to `reporting` instead. Can you clarify? (The Perspective and Reporting modules are not related.)

---

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 28, 2025, 1:55pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/4 "2025-04-28T13:55:05Z")

</div>

Oh sorry, I'm working with Ignition Perspective, I think maybe I should use "view" instead of report. I didn't know there is another module regarding Reports...

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [April 28, 2025, 2:02pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/5 "2025-04-28T14:02:21Z")

</div>

That's fine. Just edit your original post and change 'report' to 'view' to avoid confusion.

I think you might get a more meaningful infographic if you just add a dot or bar above each bar to represent the target. A line represents a trend but you're not trying to show a trend.

If you're still in bother then copy and paste the chart (from the Project Browser) in here and format it as shown in [Wiki - how to post code on this forum](https://forum.inductiveautomation.com/t/wiki-how-to-post-code-on-this-forum/77831). If your data comes from a binding then we'll need you to post the data too in the same manner (but from the Perspective Property Editor).

---

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 28, 2025, 8:11pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/6 "2025-04-28T20:11:58Z")

</div>

I wasn't able to paste the chart from the project browser because it's too large and causes an error when trying to post it.😞 But here is my `dataSources` entry:

```python
{
  "example": [
    {
      "timePeriod": "2025-01",
      "Machine 1 Production": 120,
      "Machine 1 Target": 160,
      "Machine 2 Production": 80,
      "Machine 2 Target": 100
    }
  ]
}

```

What I do is create a serie for each value (production and target) and each machine:

```python
[
  {
    "name": "Machine Production 1",
    "label": {
      "text": ""
    },
    "visible": true,
    "hiddenInLegend": false,
    "defaultState": {
      "visible": true
    },
    "data": {
      "source": "example",
      "x": "timePeriod",
      "y": "Machine 1 Production"
    },
    "xAxis": "x",
    "yAxis": "y",
    "zIndex": 0,
    "tooltip": {
      "enabled": true,
      "text": "{name}: [bold]{valueY}[/]",
      "cornerRadius": 3,
      "pointerLength": 4,
      "background": {
        "color": "",
        "opacity": 1
      }
    },
    "render": "column",
    "candlestick": {
      "open": {
        "x": "",
        "y": ""
      },
      "high": {
        "x": "",
        "y": ""
      },
      "low": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "column": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "#DCDEE0",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 0
        },
        "stacked": false,
        "width": null,
        "height": null,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "line": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": false,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    },
    "stepLine": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": true,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    }
  },
  {
    "name": "Machine 2 Production",
    "label": {
      "text": ""
    },
    "visible": true,
    "hiddenInLegend": false,
    "defaultState": {
      "visible": true
    },
    "data": {
      "source": "example",
      "x": "timePeriod",
      "y": "Machine 2 Production"
    },
    "xAxis": "x",
    "yAxis": "y",
    "zIndex": 0,
    "tooltip": {
      "enabled": true,
      "text": "{name}: [bold]{valueY}[/]",
      "cornerRadius": 3,
      "pointerLength": 4,
      "background": {
        "color": "",
        "opacity": 1
      }
    },
    "render": "column",
    "candlestick": {
      "open": {
        "x": "",
        "y": ""
      },
      "high": {
        "x": "",
        "y": ""
      },
      "low": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "column": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "width": null,
        "height": null,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "line": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": false,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    },
    "stepLine": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": true,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    }
  },
  {
    "name": "Machine 1 Target",
    "label": {
      "text": ""
    },
    "visible": true,
    "hiddenInLegend": false,
    "defaultState": {
      "visible": true
    },
    "data": {
      "source": "example",
      "x": "timePeriod",
      "y": "Machine 1 Target"
    },
    "xAxis": "x",
    "yAxis": "y",
    "zIndex": 5,
    "tooltip": {
      "enabled": true,
      "text": "{name}: [bold]{valueY}[/]",
      "cornerRadius": 3,
      "pointerLength": 4,
      "background": {
        "color": "",
        "opacity": 1
      }
    },
    "render": "step line",
    "candlestick": {
      "open": {
        "x": "",
        "y": ""
      },
      "high": {
        "x": "",
        "y": ""
      },
      "low": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "column": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "width": null,
        "height": null,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "line": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": false,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    },
    "stepLine": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": true,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    }
  },
  {
    "name": "Machine 2 Target",
    "label": {
      "text": ""
    },
    "visible": true,
    "hiddenInLegend": false,
    "defaultState": {
      "visible": true
    },
    "data": {
      "source": "example",
      "x": "timePeriod",
      "y": "Machine 2 Target"
    },
    "xAxis": "x",
    "yAxis": "y",
    "zIndex": 5,
    "tooltip": {
      "enabled": true,
      "text": "{name}: [bold]{valueY}[/]",
      "cornerRadius": 3,
      "pointerLength": 4,
      "background": {
        "color": "",
        "opacity": 1
      }
    },
    "render": "step line",
    "candlestick": {
      "open": {
        "x": "",
        "y": ""
      },
      "high": {
        "x": "",
        "y": ""
      },
      "low": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "column": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "fill": {
          "color": "",
          "opacity": 1
        },
        "stroke": {
          "color": "",
          "opacity": 1,
          "width": 1
        },
        "stacked": false,
        "width": null,
        "height": null,
        "deriveFieldsFromData": {
          "fill": {
            "color": "",
            "opacity": ""
          },
          "stroke": {
            "color": "",
            "opacity": "",
            "width": ""
          }
        },
        "heatRules": {
          "enabled": false,
          "max": "",
          "min": "",
          "dataField": ""
        }
      }
    },
    "line": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": false,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    },
    "stepLine": {
      "open": {
        "x": "",
        "y": ""
      },
      "appearance": {
        "connect": true,
        "tensionX": 1,
        "tensionY": 1,
        "minDistance": 0.5,
        "stroke": {
          "width": 3,
          "opacity": 1,
          "color": "",
          "dashArray": ""
        },
        "fill": {
          "opacity": 0,
          "color": ""
        },
        "bullets": [
          {
            "enabled": true,
            "render": "circle",
            "width": 10,
            "height": 10,
            "label": {
              "text": "{value}",
              "position": {
                "dx": 0,
                "dy": 0
              }
            },
            "fill": {
              "color": "",
              "opacity": 1
            },
            "stroke": {
              "color": "",
              "opacity": 1,
              "width": 1
            },
            "rotation": 0,
            "tooltip": {
              "enabled": true,
              "text": "{name}: [bold]{valueY}[/]",
              "cornerRadius": 3,
              "pointerLength": 4,
              "background": {
                "color": "",
                "opacity": 1
              }
            },
            "deriveFieldsFromData": {
              "fill": {
                "color": "",
                "opacity": ""
              },
              "stroke": {
                "color": "",
                "opacity": "",
                "width": ""
              },
              "rotation": ""
            },
            "heatRules": {
              "enabled": false,
              "max": 100,
              "min": 2,
              "dataField": ""
            }
          }
        ]
      }
    }
  }
]

```

But this way I can't "group" the target by timeframe and machine on the X-axis. As a result, it becomes visually unclear which target (the step lines) corresponds to which machine (the filled columns)

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/e/0eeaf9001ff9edd674d92f549fdaa8202cc0882a.png)

I hope I attached everything correctly. Any help would be appreciated. Thanks!

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [April 28, 2025, 8:13pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/7 "2025-04-28T20:13:24Z")

</div>

I'll have a look.  
You still haven't fixed your first post as requested.

---

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 28, 2025, 8:46pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/8 "2025-04-28T20:46:41Z")

</div>

My bad — I only edited the title of the post. Now everything is updated. 👍  
And thank you again for your help.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [April 28, 2025, 8:56pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/9 "2025-04-28T20:56:03Z")

</div>

Would this do the trick? (It's simple.)

 ![XY Chart with targets](https://us1.discourse-cdn.com/inductiveautomation/original/3X/1/f/1f2ba0285d6d8d987089c6eb2cf3e014f7426605.png)

To create that you would have to

- modify your data source to give the shortfall value rather than the target.
- Set every second series as `stacked`.
- I added an additional copy of one of the series with `opacity : 0` to open up a gap between categories.

It doesn't work nicely for negative shortfalls (if production exceeds target).

---

<div class="post-metadata">

**Author:** ![Angelica\_Aguilar](https://avatars.discourse-cdn.com/v4/letter/a/8e7dd6/32.png) [@Angelica\_Aguilar](https://forum.inductiveautomation.com/u/Angelica_Aguilar)\
**Post date:** [April 29, 2025, 10:00pm UTC](https://forum.inductiveautomation.com/t/xy-chart-question-production-vs-target/105618/10 "2025-04-29T22:00:47Z")

</div>

appreciate your help! Your idea is going to work for my case. Thank you!
