There isn't a single stack or framework which is indicated for a problem like this. The important thing is that you are comfortable with the framework you choose.
Ultimately, you're creating a pattern that is common all over the web: API → server → data → browser. The biggest challenge you will encounter in this endeavor is creating the charts, so pick that first. I'd suggest looking more closely at Chart.js first, but there are many other options.
In choosing your stack, work backward from your charting tool: 1. What will be the easiest and most flexible way to get the data into the chart? 2. What will be the easiest and most flexible way to structure the data for the chart?
Then, you can start picking the rest of your stack. Really, you don't need all the wizzbang of Lumen and Vue and microservices. Each library or framework you add will add complexity, reducing performance and stability, and adding time to develop and troubleshoot. Use the fewest libraries possible to keep your code small, simple, and lightweight. With a tool like Chart.js, you need only a way to deliver some html/css/js to a browser, data to the js, and collect data from an api POST.
If you really want to strip all of that down to something super-simple, and already almost done, "IoT" POST data to google-sheets, then retrieve it for your chart directly from the sheet. No server needed, just some browser code. It comes with the benefit that most of your code will be in javascript: update browser cache from sheet, structure for chart, update chart. However, if there is a requirement to have reactive (close to real-time updates without reloading page) charts, you'll have to use Node.js. Vue could do it, but it will be a painful journey getting it working cleanly.
Lastly, IoT is rarely standard API calls. It is almost always in MQTT, which is a completely different rabbit-hole I advise you avoid for now.