TeeChart for PHP包含100%的PHP源代码。它支持PHP5及更高的版本。它可作为一个调色板组件整合到针对PHP的Delphi编程环境中,从而让其他人在运行时以创建组件的方式来引用。第一个版本提供17种图表类型(2D和3D的多种组合),11个数学函数和一些图表工具组件以扩展功能。

TeeChart for PHP​www.evget.com

本教程是TeeChart for PHP教程中Javascript / HTML5图表这一节,将会介绍如何在客户端页面上创建静态和实时HTML5图表。内容主要分为以下几个部分:

  1. 介绍
  2. 静态导出
  3. 实时HTML5图表

介绍

TeeChart for PHP为您提供了将图表编写到原生HTML5中的浏览器页面的可能性,有两种模式,Static/静态和Live/实时。

静态将图表写为原始级别的画布命令系列,忠实地将图表的每一行,原始形状和文本复制为一系列原生HTML5画布指令。此导出格式可以重现TeeChart PHP库中的每个图表,就像JPEG或PNG格式图像一样。

实时将图表写为一系列可寻址的HTML5元素。这允许动画和交互性应用于原生HTML5 Javascript格式的图表。此导出模式不支持所有图表类型,有关详细信息,请参阅下面的描述部分,但允许添加交互式工具并支持mousedrag缩放和页面滚动。

静态导出

将图表导出为静态HTML5将生成文件或文本,其中包含浏览器理解和显示图表所必需的代码。 获得的外观几乎与使用GDGraphics生成的图表相同。

如何导出到静态HTML5图表

将Chart导出到HTML5所需的步骤很简单,它只包含一行代码:

include "../../../../sources/TChart.php";     $chart1 = new TChart(500,350);$chart1->getAspect()->setView3D(false);$chart1->getHeader()->setText("HTML5 Demo");$chart1->getPanel()->getGradient()->setVisible(false);     $chart1->getPanel()->setColor(Color::WHITE());// Add Series to the Chart$line = new Line($chart1->getChart());$line->fillSampleValues(6);$line->setColor(Color::DARK_GRAY());$line->getLinePen()->setWidth(3);$line->getPointer()->setVisible(true);$line->getPointer()->setStyle(PointerStyle::$CIRCLE);$chart1->getChart()->getExport()->getImage()->getHTML5()->save($path."TChart.html");

此代码将创建一个html文件,其中包含执行或html 5 Chart所必需的行。

您可以在导出 - > HTML5 - > HTML5导出文件夹中找到的功能演示中找到如何使用它的示例。

实时HTML5图表

正如我们在教程11-插件和附加功能中看到的,最新版本的TeeChart PHP在其源代码中包含了一个版本的TeeChart JavaScript,它允许我们使用javascript版本独立的使用javascript代码在我们的浏览器中生成图表,我们也可以继续使用我们的PHP代码创建图表,然后将其导出到javascript图表,从而在我们的实时页面上获取javascript图表,而无需使用单行的javascript代码。

并非所有系列类型都可用于此类导出。

可以在Features - > JScript - > TeeChartJavaScript中的功能演示中找到示例。

其他使用不同类型os系列的工作示例可以在Features - > JScript - > Series - >中的Features演示中找到。

如何导出到实时HTML5图表

当我们将图表输入到javascript(实时)时,我们有两个选项可供选择。

我们可以将Chart导出到一个文件中,在该文件中我们生成一个HTML文件,其中包含浏览器的必要代码,以便在javascript中显示代码:

$chart1->getChart()->getExport()->getImage()->getJavaScript()->SaveToFile('jschartToolTip.html', $chartName);

或者我们可以直接导出到流,这将允许我们直接在浏览器中绘制图表,而无需事先将代码保存在文件中。

echo  $chart1->getChart()->getExport()->getImage()->getJavaScript()->Render($chartName)->toString();

$ chartName参数是可选的,当我们需要在使用的javascript代码中使用Chart的名称时,它将用作id。如果未包含此参数,则默认使用chart1。

您可以在JScript文件夹的Features演示中找到工作示例。

以下是完整代码的示例:

getChart());$line->fillSampleValues(6);$line->getPointer()->setVisible(true);$tipTool = new ToolTip($chart1->getChart());$tipTool->setSeries($line);     $tipTool->getFont()->setName('Tahoma');$tipTool->getFont()->setSize(20);$tipTool->getFont()->setColor(Color::RED());$tipTool->setOnShow("function(tool,series,index) { scaling=2; poindex=index; }       ");$tipTool->setOnHide("function() { scaling=0; poindex=-1; }");$tipTool->setOnGetText('function(tool,text) { return "Text:n"+text; }');// In case you want to save to a file$chart1->getChart()->getExport()->getImage()->getJavaScript()->SaveToFile('jschartToolTip.html');
?>
getChart()->getExport()->getImage()->getJavaScript()->Render()->toString();
?>

Javascript / HTML5图表工具

PHP版本中包含的JavaScript功能允许我们轻松地向Chart添加各种工具。这些只能在导出实时图表时使用。可用的工具是:

注解

此工具允许我们在图表中添加一个或多个注释。您可以选择帮助库中提供的属性。

此外,您可以在Features - > JScript - > Annotation中的Features演示中找到示例。

 $chart1->getChart()->getTools()->add(new Annotation());$chart1->getChart()->getTools()->getTool(0)->setText("Annotation");$chart1->getChart()->getTools()->getTool(0)->setLeft(100);$chart1->getChart()->getTools()->getTool(0)->setTop(100);

光标

如果我们使用光标工具,我们可以在Chart中显示不同的游标。这些可以根据您的喜好进行定制,方法是更改颜色,宽度和长度等属性,并使其跟随鼠标的移动。

它包含一个事件(指定为属性)OnChange,它允许我们在页面中添加javascript。更改它将被指定为文本,并将在Cursor的事件OnChange中执行。

可以在Features - > JScript - > Cursor中的Features演示中找到示例.

滚轮

滚轮工具允许我们在包含大量数据时选择图表的特定区域,哪怕是很难理解小细节。我们可以使用所有数据指定图表的所需大小,并在此区域内指定我们想要详细查看的内容,这将在另一个图表中显示。我们可以选择使用鼠标轻松放大或移动此选定区域。

除了允许您自定义大小的工具属性,选择区域等,它还包括事件(指定为属性)OnChanging,它允许您在页面中添加javascript代码。这被指定为文本,并将在Cursor OnChanging事件中实现。

您可以在Features - > JScript - > Scroller中的Features演示中找到示例。

滑块

滑块工具具有与滚动工具类似的功能,允许我们选择要在图表中显示的最大值和最小值,但区别在于它不会创建包含所有数据的另一个图表,但添加了滑块组件在我们指定的位置。这允许我们使用鼠标移动所有图表数据。它还包含属性OnChanging事件。

您可以在功能 - > JScript - >滑块中的Features演示中找到示例。

工具提示

工具提示工具是许多类型图表的必备工具。它允许您在鼠标光标的点经过指定点时显示包含文本的标签(例如值),当光标离开同一点上方的极点时,又使其消失,并隐藏以远离该点。

这允许我们为OnShow事件分配不同的值,并使用相同的属性为OnGetText OnHide分配。

您可以在功能 - > JScript - >工具提示中的Features演示中找到示例。

使用自定义代码增强页面上的图表

由于PHP版本允许我们轻松地将javascript代码添加到我们的页面,添加对teechart.js的引用后,就可以为我们提供使用javascript改进或自定义我们的javascript图表的选项。

在TeeChart for PHP文件夹Docs中,您将找到TeeChart javascript的必要文档,以及开发人员希望在其页面中使用jscript代码的函数。

TeeChart for PHP教程到这里就结束了。

html5 跳转参数不显示_TeeChart for PHP教程(十二):Javascript / HTML5图表相关推荐

  1. html5 跳转参数不显示_HTML5、CSS3、ES6新特性总结

    前言:HTML5.CSS3.ES6新特性,可以说是基础前端的面试的必考题了,以下是关于新特性的基本总结. HTML5: 语义化的区块和段落元素:<section>,<article& ...

  2. 十二、HTML5新增标签特性详解(audio、video、input)

    HTML5 第一天 一.什么是 HTML5 HTML5 的概念与定义 定义:HTML5 定义了 HTML 标准的最新版本,是对 HTML 的第五次重大修改,号称下一代的 HTML 两个概念: 是一个新 ...

  3. 如鹏网学习笔记(十二)HTML5

    一.HTML5简介 HTML5是HTML语言第五次修改产生的新的HTML语言版本 改进主要包括: 增加新的HTML标签或者属性.新的CSS样式属性.新的JavaScript API等.同时删除了一些过 ...

  4. html5地图边界,当玩家到达边界时如何使RPG地图延伸? Javascript HTML5

    我努力在谷歌上找到我的问题的答案,所以想到了id帖子. 我正在使用html5,javascript和jquery构建一个自上而下的基于tile的RPG游戏. 我已在阵列中设置图像.我已经在一个数组中设 ...

  5. {HTML5}JQueryMobile页面跳转参数的传递解决方案

    在JQueryMobile开发手机端应用使用可能需要考虑相关的页面跳转带来的参数问题.因为JQueryMobile其实也是HTML5实践的结果.HTML5中有localStorage和sessionS ...

  6. 客户端跳转代码html5,HTML5跳转小程序wx-open-launch-weapp的示例代码

    注意事项 微信开放标签有最低的微信版本要求,以及最低的系统版本要求. 微信版本要求为:7.0.12及以上. 系统版本要求为:iOS 10.3及以上.Android 5.0及以上. 绑定域名 微信安全域 ...

  7. html5 跳到拨打电话功能

    html5 跳到拨打电话功能 在做一个微信的微网站中的一个便民服务电话功能的应用,用到移动web页面中列出的电话号码,点击需要实现调用通讯录,网页一键拨号的拨打电话功能. 如果需要在移动浏览器中实现拨 ...

  8. html5语法参考图片,仿AS语法来写HTML5—第1章,显示一张图片

    最近开始学习html5,因为一直都是研究as,所以还是觉得as顺眼一点,但是html5也不能不学,于是就想出了,可以把html5用as的语法来写出来,做游戏应该来的比较顺手一些,下面开始第一篇 第一篇 ...

  9. Android组件化专题-路由动态注入跳转参数以及获取其他模块的fragment

    上几篇组件化专题文章,我们对路由框架基本实现了,Activity之间当跳转和模块间当通信. 现在思考一个问题: 不管是在Activity或者Fragment,跳转都会传递一些参数,然后在对应对Acti ...

最新文章

  1. 最长不下降子序列的O(n^2)算法和O(nlogn)算法
  2. Java黑皮书课后题第9章:9.7(Account类)设计一个名为Account的类,它包含……。编写一个测试程序,创建一个账户ID为1122、余额为20000美元、年利率为4.5%的Account…
  3. centos7输入systemctl status network.service出现Unit network.service could not be found的解决办法
  4. (转载)项目实战工具类(一):PhoneUtil(手机信息相关)
  5. 第二次作业+105032014149
  6. MFC在一个工程中启动其他工程的exe文件
  7. 辅助进度控制的计算机软件是指,辅助进度控制的计算机软件是指以( )为核心的项目管理软件包。...
  8. 从App直接打开小程序
  9. matlab canon,Canonical state-space realization
  10. 数字排在最前,英文字母其次,汉字则按照拼音进行排序,获取中文首字母
  11. 如何选择好的香港虚拟主机
  12. 如何合理使用ClickHouse分区表
  13. 模拟SPI驱动SD卡
  14. STC 51单片机43——看门狗
  15. php文件包含漏洞利用
  16. 由于幸存者偏差,导致强变量在后续迭代中逐渐削弱甚至相反怎么办|文末有福利
  17. 字节跳动Web Infra发起 Modern.js 开源项目,打造现代 Web 工程体系
  18. UBT7:ubuntu安装navicat15
  19. JAVA Spring 事务管理事务不回滚问题
  20. 【综述】A Comprehensive Survey on Graph NeuralNetworks(3)

热门文章

  1. 问题五十四:怎么用ray tracing画参数方程表示的曲面(2)—— bezier surface
  2. 数据结构思维导图汇总
  3. 大数据分析是如何工作
  4. python中loadpage_实现加载页Loading Page 的几种方法
  5. 32蜂鸣器天空之城代码_stm32版蜂鸣器播放爱若琉璃
  6. Windows中使用包管理器(类似于apt/yum的) - Chocolatey
  7. 高阶无模型自适应迭代学习控制学习记录
  8. web开发技术复习笔记
  9. HDU1517 A Multiplication Game (博弈论+思维)
  10. python压缩数据数组长度_python – 如何解压缩字节数组中的gzipped数据?