Edit in JSFiddle

const client = new KeenAnalysis({
  projectId: '5c87b64ec9e77c0001cf5b6e',
  readKey: 'FB952962910C97DE3E1C6A25EB2FC6B22FDB1ACA9D572948EA18227287BC4E12'
});

const chart = new KeenDataviz({
  container: '#chart',
  type: 'funnel-3d',
  title: 'Actions and purchases',
  labelMapping: {
  	pageviews: 'Pageviews',
    banner_visibility: 'Banner visibility',
    banner_clicks: 'Banner clicks',
    signups: 'Signups',
  },
  funnel: {
    lines: false,
    percents: {
      show: true,
    },
    resultValues: false
  }
});

client
  .query({
		analysis_type: 'funnel',
    steps: [
      {
        event_collection: 'pageviews',
        actor_property: 'user.uuid',
        timeframe: {
          start: '2019-03-13T00:00:00.000Z',
          end: '2019-08-14T00:00:00.000Z'
        }
      },
      {
        event_collection: 'banner_visibility',
        actor_property: 'user.uuid',
        timeframe: {
          start: '2019-03-13T00:00:00.000Z',
          end: '2019-08-14T00:00:00.000Z'
        }
      },
      {
        event_collection: 'banner_clicks',
        actor_property: 'user.uuid',
        timeframe: {
          start: '2019-03-13T00:00:00.000Z',
          end: '2019-08-14T00:00:00.000Z'
        }
      },
      {
        event_collection: 'signups',
        actor_property: 'user.uuid',
        timeframe: {
          start: '2019-03-13T00:00:00.000Z',
          end: '2019-08-14T00:00:00.000Z'
        }
      }
    ]
  })
  .then(function(res) {
    // Handle the result
    chart.render(res);
  })
  .catch(function(err) {
    // Handle the error
    chart
      .message(err.message);
  });
<div id='chart'></div>
#chart{
  height: 400px;
}

External resources loaded into this fiddle: