How to generate 3d cylinder surface plot in plotly JS


I’m struggling to create a 3d cylinder in plotly js. I’ve been able to do this using plotly express in python, but porting it to JS is giving me a lot of trouble. I initially tried using a mesh3d with a list of xyz values but that returned this strange entity

. I then tried using surface as was suggested here ( by creating a data structure similar to np.meshgrid but thats giving me an empty plot for some reason.

The closest ive gotten is using scatter3d and the np.meshgrid type data (MxN matrix) of values parameterized by height and theta, but this still isnt really the surface effect im looking for. I could really use some help. Thank you.