TeeChart for PHP教程(九):图表的导出和导入

本教程将介绍将图表导出为图形格式文件并使用TeeChart的T形格式模板的过程。

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

TeeChart for PHP试用版


    本教程是TeeChart for PHP教程中图表的导出和导入这一节。本章节的内容主要介绍如何以各种格式导出TeeCharts并导入TeeChart自己的.tee格式图表模板。    

  1. 导出图表

    可用格式

  2. 导出图像

    JPEG

    GIF

    PNG

  3. 导出数据

    文本

    XML

  4. TeeChart的Tee模板和数据导出导入格式

    Tee文件

  5. 导入

    导入Tee格式文件

    示例导入Tee文件            


导出图表

可用的导出格式

    可以将所有格式复制到文件或剪贴板或流中。

图像格式

  • JPEG:JPEGFormat类

  • GIF:GIFFormat类

  • PNG:PNGFormat类

  • WBMP:WBMPFormat类

数据格式

  • Text:TextFormat类

  • XML:XMLFormat类

  • HTML:HTMLFormat类

  • Excel:ExcelFormat类

其他格式

    Tee格式是一种灵活的格式,可存储图表属性信息和(可选)图表数据。它的文件很小(取决于数据),非常适合 络用于更新基于实时客户端的图表。

示例导出

    可以合理导出到文件,在大多数情况下,您只需要定义目标文件名。

  With SaveDialog1 do               if Execute then Chart1.SaveToBitmapFile(SaveDialog1.FileName);

JPG

    JPEG文件导出具有速度和质量的附加参数。

 $tmpResult = fc.showSaveDialog(JpegExportDemo.this);            if (tmpResult == JFileChooser.APPROVE_OPTION) {                File file = fc.getSelectedFile();                String tmpName = file.getAbsolutePath();                if (!ExportUtils.isExtension(file, ExportUtils.JPG)) {                    tmpName = ExportUtils.replaceExtension(file, ExportUtils.JPG);                }                                myChart.getExport().getImage().getJPEG().save(tmpName);            }

    性能,jpegBestQuality和压缩质量百分比(高值减去压缩)的存在将使文件更大,导出花费的时间会更长,但是导出的效果会更好,可以根据自己的需求来选择。

GIF

    TeeChart提供了创建GIF图表图像的方法,但您应该使用Unisys检查您的许可位置,以便使用GIF LZW编码图像。替代RLE编码不受Unisys许可的约束。

int tmpResult = fc.showSaveDialog(GifExportDemo.this);            if (tmpResult == JFileChooser.APPROVE_OPTION) {                File file = fc.getSelectedFile();                String tmpName = file.getAbsolutePath();                if (!ExportUtils.isExtension(file, ExportUtils.GIF)) {                    tmpName = ExportUtils.replaceExtension(file, ExportUtils.GIF);                }                myChart.getExport().getImage().getGIF().save(tmpName);            }

PNG

    PNG格式保留了GIF格式的许多优点,但也提供了超出GIF格式的功能。PNG改进了GIF逐步显示图像的能力,也就是说,当图像通过 络连接到达时,能够显示更好的图像近似值。

 int tmpResult = fc.showSaveDialog(PngExportDemo.this);            if (tmpResult == JFileChooser.APPROVE_OPTION) {                File file = fc.getSelectedFile();                String tmpName = file.getAbsolutePath();                if (!ExportUtils.isExtension(file, ExportUtils.PNG)) {                    tmpName = ExportUtils.replaceExtension(file, ExportUtils.PNG);                }                myChart.getExport().getImage().getPNG().save(tmpName);            }

导出数据

    以下示例以Text或XML格式从Chart Series导出的数据。它们可以创建并与图表系列相关联,从中可以将数据导出为文件,流或剪贴板。

try {                    $myChart->getExport()->getData()->getText()->save($tmpName);                }

XML文件

 try {                    $myChart->getExport()->getTemplate()->toXML($tmpName);                    $showSavedFile(tmpName);                }

TeeChart的Tee模板和数据导出/导入格式

Tee文件

    Tee文件是TeeChart自己的模板格式,用于保存图表及其数据,并在Java IDE中具有.tej的扩展名。修改的图表属性随模板一起保存,并在将模板导入新图表时重现。

好处:

  • Tep文件的大小非常小,在大多数情况下,它比纯图形格式(Quicker)更具优势。

  • 模板的目标图表是实时,可以进行缩放和滚动,并修改其属性。

  • 根据您的喜好,可以选择是否将数据包含在Tee模板中。

 try {             $tChart1->getExport()->getTemplate()->toFile("/temp/chart1.tep");                } catch (IOException ex1) {                 ex1.printStackTrace();         }

导入

    从URL导入XML,显示如何从/向xml导出和加载的示例:

Save to xml;               try {                $myChart->getExport()->getTemplate()->toXML($tmpName);                    showSavedFile($tmpName);                } catch (FileNotFoundException $e) {                    System.out.println(e);                }  Load from xml:             try {                                                   $myChart->setChart($myChart->getImport()->getTemplate()->fromXML($tmpName));                    $myChart->repaint();                }                catch (FileNotFoundException $e) {                    System.out.println(e);                }

导入Tee格式文件

    从本地文件源或http数据源导入已保存的文件。导入示例:

   import from file             $tChart1->getImport()->getTemplate()->fromFile("myFile.tep");        or     XML..             $tChart1->getImport()->getTemplate()->fromXML("myFile.xml");      or     Stream..             try {                //( 1) Save the template into a Stream...                ByteArrayOutputStream m = new ByteArrayOutputStream();                                 $myChart->getExport()->getTemplate()->toStream($m);                //( 2) Load the template into other Chart...                $copyChart->setChart($copyChart->getImport()->getTemplate()->fromStream(                        new ByteArrayInputStream(m.toByteArray())                ));                //( 3) repaint the Chart                $copyChart->repaint();            } catch (IOException $ex) {                System.out.println(ex);            } catch (ClassNotFoundException $ex) {                System.out.println(ex);            }

    本节教程就到这里了,下一章我们将会介绍如何在图表面板上自定义绘图。


    TeeChart for .NETTeeChart for JavaScript/HTML5TeeChart for Xamarin.Android均已加入在线订购,现在抢购可立享特别优惠!!!

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月3日
下一篇 2019年7月3日

相关推荐

发表回复

登录后才能评论