DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: tino0914
今日帖子: 30
在线用户: 15
导航: 论坛 -> Web应用开发 斑竹:bodies  
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 14:22:13
标题:
intraweb14如何使用echarts? 浏览:1617
加入我的收藏
楼主: 发在了Delphi技术版,完全无人问津。只有在这里看看能不能请高人出手了。
想使用delphi +intraweb+echarts来图表显示数据。
1、在一个intraweb的form中建立了一个IWregion,然后在 form的ExtraHeader中,写了一段script。能显示 折线,但点任何form上的按钮都卡住,不知道什么原因。script附在后面了
2、想通过点击按钮,过滤数据,将数据动态显示出来,有什么好办法。


谢谢
----------------------------------------------
-
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 14:24:44
1楼: <!-- 引入 echarts.js -->
<script src="echarts.common.min.js"></script>

    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="width: 800px;height:600px;"></div>
    <script type="text/javascript">
        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));

        // 指定图表的配置项和数据
        var option = {
          title: {
          text: '我的检测曲线'
          },
          tooltip: {},
          toolbox: {
          left: 'center',          
          feature: {          
          dataZoom: {     yAxisIndex: 'none'    }, 
          restore: {show: true},
          saveAsImage: {show: true}          
          }        
          },
          legend: {
          data:['我的属性']
          },
          xAxis: [{          
          type: 'category',
          boundaryGap: false,
          name: '记录时间',
          data:['12-01','12-02','12-03','12-04','12-05','12-06']
          
          }],
          yAxis: [{type : 'value'//默认为值类型
          }],
          series: [{
          name: '电池读数',
          type: 'line',
          data: [5, 20, 36, 10, 16, 27]
          }]
        };

        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);

        function changeSeries(data1,data2){
          option.series.data=data1;
          option.xAxis.data=data2;
          myChart.setOption(option);
        }
    </script>


y轴与serier是如何关联起来的?谢谢
----------------------------------------------
-
作者:
男 drroc (mvcxe) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 14:48:23
2楼: 同一问题,还是在一个贴里比较好,没写IW很多年,楼主你要实现的功能,我做过,但忘得7788了,大概两条路吧

1,你加了script后,页面卡住,你在浏览器中,按F12,刷新页面,看看浏览器有没有提示脚本错误,温馨提示,最好别用IE调式

2,点按钮,生成一段javascrip让浏览器执行就可以,具体实现不记得了

IW就是这样的毛病,他的经验只建立在他的身上,再牛的web前端都帮不上你的忙,正路的解决办法,是由js完成,数据通过api请求后台获取,就是你这个数据data:['12-01','12-02','12-03','12-04','12-05','12-06']
----------------------------------------------
MVCXE中国首个DELPHI MVC WEB框架:https://www.mvcxe.com/
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 15:14:27
3楼: 有高手说几句也是很大的帮助啊。
1 我用的就是IE,这个就算了,暂时不好改。没有脚本错误提示
2 我再试一下。
3 Delphi做web显示折线等图表有什么好的办法?


谢谢
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2018/11/12 15:24:46
4楼: 你用的是 IE,不表示,非得用 IE 去调试 BS 。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 16:43:41
5楼: 换了一个浏览器,果然找到了一个错误,一个日期控件,数据格式不对。现在不卡死了。但数据还是不能 传过去。
谢谢 高人们
----------------------------------------------
-
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 17:04:45
6楼: 我在delphi里面是通过这个命令,调用JS的:

WebApplication.CallBackResponse.AddJavaScriptToExecuteAsCDATA('changeSeries('+Data1.ToJSON+','+Data2.ToJSON+');');


没有任何反应,请问又将如何处理?
----------------------------------------------
-
作者:
男 drroc (mvcxe) ★☆☆☆☆ -
盒子活跃会员
2018/11/12 17:08:20
6楼: 帮你百度了一下
https://www.cnblogs.com/del/p/3773748.html
通过上面这文章你可以学会button如何执行javascript

http://echarts.baidu.com/tutorial.html#%E5%BC%82%E6%AD%A5%E6%95%B0%E6%8D%AE%E5%8A%A0%E8%BD%BD%E5%92%8C%E6%9B%B4%E6%96%B0
通过echart的文档,可以知道执行setOption可以刷新数据
myChart.setOption({
        xAxis: {
          data: data.categories
        },
        series: [{
          // 根据名字对应到相应的系列
          name: '销量',
          data: data.data
        }]
    });

那么,你的button就生成这样一段javascript,data换成你的['12-01','12-02','12-03','12-04','12-05','12-06']}],[5, 20, 36, 10, 16, 27]

就这样吧,很蠢的做法,高手们补充点更好的其它办法
----------------------------------------------
MVCXE中国首个DELPHI MVC WEB框架:https://www.mvcxe.com/
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/13 8:07:06
7楼: 那如何执行click呢?我要把生成的string传递给script
----------------------------------------------
-
作者:
男 sxbug (太阳雨) ★☆☆☆☆ -
盒子活跃会员
2018/11/14 22:12:13
8楼: 现在总算能把数据传进来了。但还有一个问题,就是我的时间轴是 从access中的datetime字段读出来的,现在通过json数据传进出去后,显示出来都成了浮点数,不是按日期时间格式显示的,请问这个要如何处理,echarts不能显示datetime格式数据吗?谢谢
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行85.9375毫秒 RSS