当前位置:   article > 正文

pyecharts 应用6 三维曲面图_echart surface增加维度

echart surface增加维度
  1. import math
  2. import pyecharts.options as opts
  3. from pyecharts.charts import Surface3D
  4. def float_range(start, end, step, round_number= 2):
  5. """
  6. 浮点数 range
  7. :param start: 起始值
  8. :param end: 结束值
  9. :param step: 步长
  10. :param round_number: 精度
  11. :return: 返回一个 list
  12. """
  13. temp = []
  14. while True:
  15. if start < end:
  16. temp.append(round(start, round_number))
  17. start += step
  18. else:
  19. break
  20. return(temp)
  21. def surface3d_data():
  22. ret=[]
  23. for t0 in float_range(-3, 3, 0.05):
  24. y = t0
  25. for t1 in float_range(-3, 3, 0.05):
  26. x = t1
  27. z = math.sin(x ** 2 + y ** 2) * x / 3.14
  28. ret.append([x, y, z])
  29. return ret
  30. #3D散点图需要的数据一个二维数组,每一个元素是一个三元素一维数组,分别是x,y,z的坐标
  31. c=(
  32. Surface3D(init_opts=opts.InitOpts(
  33. width="1600px",
  34. height="800px"))
  35. .add(
  36. series_name="Scatter3D",
  37. data= surface3d_data(),
  38. xaxis3d_opts=opts.Axis3DOpts(type_="value"),
  39. yaxis3d_opts=opts.Axis3DOpts(type_="value"),
  40. grid3d_opts=opts.Grid3DOpts(width=100,
  41. height=30,
  42. depth=100),
  43. )
  44. .set_global_opts(
  45. visualmap_opts=opts.VisualMapOpts(
  46. dimension=2,
  47. max_=1,
  48. min_=-1,
  49. range_color=[
  50. 'red',
  51. 'orange',
  52. 'yellow',
  53. 'green',
  54. 'blue',
  55. 'purple'
  56. ],
  57. )
  58. )
  59. )
  60. c.render("surface_wave.html")

效果图如下:

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/683755
推荐阅读
  

闽ICP备14008679号