issue_871b.py 935 B

1234567891011121314151617181920212223242526272829303132
  1. from vedo import *
  2. settings.default_font = "Theemim"
  3. pts = [(0, 0), (1, 0), (1, 1), (0, 1), (0, 0.5)]
  4. data = [1, 10, 100, 1000, 10000]
  5. scalarbar = None
  6. line = Line(pts, c="k", lw=10)
  7. line.pointdata["mydata"] = data
  8. line.cmap("jet", "mydata", logscale=True)
  9. # automatic add scalarbar
  10. # line.add_scalarbar(title="mydata", size=(100,800))
  11. # line.add_scalarbar3d(title="mydata", nlabels=4)
  12. #
  13. # Or manual add scalarbar
  14. # scalarbar = ScalarBar(line, title="mydata", size=(100,800))
  15. scalarbar = ScalarBar3D(line, title="mydata",
  16. c='black', nlabels=4, label_format=":.1e")
  17. # modify the text of the scalarbar
  18. for e in scalarbar.unpack():
  19. if isinstance(e, Text3D):
  20. txt = e.text().replace(".0e+0", " x10^")
  21. if "x10" in txt: # skip the title
  22. e.text(txt) # update new text
  23. e.scale(0.02)
  24. plt = Plotter()
  25. plt += [line, line.labels("mydata", scale=.02), scalarbar]
  26. plt.show()