Python+pyecharts绘制双动态曲线教程详解

作者:一拳十个锵锵怪 时间:2023-03-04 09:19:48 

总体跟官方样例相似,但是官方样例因为部分代码有误无法运行,同时需要了解json,以及前后端知识需要一些时间,因此供大家参考。

这个是views

def line_base() -> Line:
   line = (
       Line()
       .add_xaxis(list(range(10)))
       .add_yaxis(series_name="专注度", y_axis=[randrange(0, 100) for _ in range(10)],areastyle_opts=opts.AreaStyleOpts(opacity=0.5))
       .add_yaxis(series_name="放松度", y_axis=[randrange(0, 100) for _ in range(10)],areastyle_opts=opts.AreaStyleOpts(opacity=0.5))
       .set_series_opts()
       .set_global_opts(
           title_opts=opts.TitleOpts(title="专注度和放松度"),
           xaxis_opts=opts.AxisOpts(type_="value"),
           yaxis_opts=opts.AxisOpts(type_="value"),
       )

.dump_options_with_quotes()
   )
   return line

class ChartView(APIView):
   def get(self, request, *args, **kwargs):
       return JsonResponse(json.loads(line_base()))

cnt = 9
cnt1 = 9
class ChartUpdateView(APIView):
   def get(self, request, *args, **kwargs):
       global cnt,cnt1
       cnt = cnt + 1
       cnt1 = cnt1 + 1
       return JsonResponse({"name": cnt,"value": randrange(0, 100),"name1":cnt1,"value1":randrange(0, 100)})

这个是urls界面

path('index/',views.Index),
   path('line/', views.ChartView.as_view()),
   path('lineUpdate/', views.ChartUpdateView.as_view()),

html

function fetchData() {
           $.ajax({
               type: "GET",
               url: "http://127.0.0.1:8000/line",
               dataType: "json",
               success: function (result) {
                   var options = result.data;
                   line.setOption(options);
                   old_data = line.getOption().series[0].data;
                   old_data1 = line.getOption().series[1].data;

}
           });
       }

function getDynamicData() {
           $.ajax({
               type: "GET",
               url: "http://127.0.0.1:8000/lineUpdate",
               dataType: 'json',
               success: function (result) {
                   var options = result.data;
                   old_data.push([options.name, options.value]);
                   old_data1.push([options.name1, options.value1]);
                   line.setOption({
                       series: [{
                           data: old_data
                       },
                       {
                          data:old_data1
                       }
                       ]
                   });

}
           });
       }

效果如图所示,这里叶修改了Line图的风格

Python+pyecharts绘制双动态曲线教程详解

来源:https://blog.csdn.net/m0_49015921/article/details/122889399

标签:Python,pyecharts,双动态曲线
0
投稿

猜你喜欢

  • [译]2009年海外Web设计风潮(上)

    2009-01-23 09:21:00
  • Python入门教程1. 基本运算【四则运算、变量、math模块等】 <font color=red>原创</font>

    2023-12-21 19:44:16
  • vue路由history模式页面刷新404解决方法Koa Express

    2024-06-07 15:22:33
  • 教你使用TensorFlow2识别验证码

    2022-06-26 19:24:38
  • MySQL Workbench下载与使用教程详解

    2024-01-13 18:50:26
  • python用字典统计单词或汉字词个数示例

    2021-09-02 17:14:10
  • Vue用v-for给循环标签自身属性添加属性值的方法

    2024-04-10 10:30:56
  • Python使用import导入本地脚本及导入模块的技巧总结

    2022-09-07 15:09:29
  • PyTorch梯度裁剪避免训练loss nan的操作

    2022-02-16 10:56:23
  • python tornado微信开发入门代码

    2023-11-01 01:04:59
  • 如何使用Python的OpenCV库处理图像和视频

    2022-09-06 10:22:12
  • Tensorflow实现卷积神经网络的详细代码

    2022-02-20 22:14:06
  • 跟我学习javascript的异步脚本加载

    2024-04-17 09:59:44
  • Node.js对MySQL数据库的增删改查实战记录

    2024-01-14 18:25:12
  • 最新idea2021注册码永久激活(激活到2100年)

    2023-06-21 01:42:42
  • 如何设计广告的用户体验?

    2007-12-20 13:12:00
  • 使用MySQL内建复制功能

    2009-12-15 21:36:00
  • Python入门教程(二十六)Python的模块

    2022-09-03 08:56:22
  • Matplotlib 绘制饼图解决文字重叠的方法

    2023-06-12 22:23:06
  • ML神器:sklearn的快速使用及入门

    2023-04-17 04:42:09
  • asp之家 网络编程 m.aspxhome.com