question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Frontend bug when plotting 3D meshes with `step=`

See original GitHub issue

wandb --version && python --version && uname

  • Weights and Biases version: 0.8.27
  • Python version: 3.7.5
  • Operating System: Linux

Description

I am trying to plot 3D models using the code:

wandb.log({prefix + " Mesh %d" % i: wandb.Object3D(open(obj_path))}, step=step)

This worked fine until I added the step= argument (so I could see the evolution of the meshes over time). I’ve checked that the steps are monotonically increasing between calls with the same key and that the keys are what I expect them to be.

Whenever a new mesh is plotted for a given key, the web UI shows two meshes beside each other and the controls stop working (see screenshot). The problem goes away when refreshing the page.

The screenshot below shows the problem after several new steps have been plotted: Screenshot_2020-02-18_13-49-36

This screenshot shows the same view after refreshing the page (this is what I always expect to see): Screenshot_2020-02-18_13-59-34

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:12 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
ariG23498commented, Dec 3, 2020

Hey @fwilliams In the past year we’ve majorly reworked the CLI and UI for Weights & Biases. We’re closing issues older than 6 months. Please comment to reopen.

1reaction
nbardycommented, Mar 6, 2020

Also I’m still seeing the issue with multiple 3D plots. Has your fix been pushed to production yet?

The fix will be deployed today. I’ll let you know when it’s live.

would be really nice to have some control on the shading both from the Python side (in wandb.log) and in the plot on the webpage

Are you interested in writing your own custom shader code? e.g. GLSL. Or something more along the lines of options for controlling lighting position, intensity, type ettc?

  1. Overlays: It would be really nice to be able to overlay point clouds, meshes and lines (and possibly text) inside one 3D figure.

Great request, I’ll add this to the roadmap.

  1. Right now the only way to upload a 3D model is to save a mesh file (.obj, .stl, etc…) and log it. I cannot delete the mesh file until it’s been uploaded which leads to a lot of spammy obj files on my file system.

We also support passing StringIO objects to media files so you can build your obj file in memory.

I created a new example of that for you here showing how it works: https://github.com/wandb/client/pull/902/files#diff-503fb3aee8655ce2af95bead1a038319R55

I would really like to be able to do wandb.log({‘mymesh’: Object3d(vertices, faces)}) where vertices is an Nx3 tensor/array of vertices (N vertices, one vertex per row) and faces is an Mx3 array of indices into the rows of vertices (M triangles, one triangle per row).

Being able to go straight from tensors as vertices and faces to obj would great. If you build a helper function to convert tensors to obj. We’d be exciting to merge it into our open source client repo.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Frontend bug when plotting 3D meshes with `step=` · Issue #867
Whenever a new mesh is plotted for a given key, the web UI shows two meshes beside each other and the controls stop...
Read more >
Keeping one 3D plot or Mesh object on the foreground when ...
For 3D objects their positions are fixed in 3D space. You cannot change their relative position without changing their definitions.
Read more >
Unable to plot small mesh - Electronics - Ansys Learning Forum
Plot the Mesh by selecting the plate in 3D Modeler Window and Right Mouse Click > Plot Mesh. You don't have to fully...
Read more >
3D scatter plot of multiple files with each file having unique color
NB scatter in 3D needs x , y and z , all with shape (N,) , while meshobj.points has shape (N, 3) so...
Read more >
Matlab Tutorial 4 - 2D Plot from 3D Mesh - YouTube
Addon to the 3D mesh functionality in Matlab. Playlist: https://www.youtube.com/playlist?list=PLE4jpqcRJiBpObzLH5YG5wpSPdof9bDDo▷ FOLLOW ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found