• <menu id="w2i4a"></menu>
  • logo 【TeeChart VCL/FMX】教程2019
    文檔首頁>>【TeeChart VCL/FMX】教程2019>>TeeChart Pro VCL/FMX教程(十二):圖表的導出和導入

    TeeChart Pro VCL/FMX教程(十二):圖表的導出和導入


        TeeChart Pro VCL/FMX是一款主流的圖表制作工具。提供了數(shù)百種用于可視化的2D、3D圖形樣式、56種數(shù)學、統(tǒng)計和金融函數(shù),以及不限數(shù)量的坐標軸和30種調色板組件。TeeChart Pro VCL/FMX教程將會以連載的形式持續(xù)為大家?guī)鞹eeChart Pro VCL/FMX的使用方法。 

    點擊下載TeeChart Pro VCL/FMX最新試用版


        本篇教程為大家?guī)淼氖?a href="http://www.xiangyinys.com/product/608/download" target="_self" style="white-space: normal; color: rgb(31, 73, 125);">TeeChart Pro VCL/FMX中圖表的導出和導入的這一節(jié),概述了以各種格式導出TeeCharts并導入TeeChart自己的.tee格式圖表模板。內容主要分為以下幾個部分: 

    1. 導出圖表

      可用格式

      示例導出

    2. 導出圖像

      JPEG,GIF,PNG

    3. 導出數(shù)據(jù)

      text,XML,HTML,XLS和XLSX

    4. TeeChart的Tee模板和數(shù)據(jù)導出/導入格式

      Tee files

    5. 導入

      導入Tee格式文件

      示例導入Tee文件

      ChartWebSource和SeriesTextSource


    導出圖表

    可用格式

        可用的導出格式——可以將所有格式復制到文件或剪貼板,某些格式可能會復制到Stream。

    圖像格式

    (BMP)                CopyToClipboardBitmap

    (WMF)               CopyToClipboardMetafile

    BMP                  TBMPExportFormat

    JPEG                  SaveChartToJPEGFile

    WMF                 TEMFExportFormat.Enhanced (false)

    EMF                   TEMFExportFormat

    GIF                     TGIFExportFormat

    PNG                   TPNGExportFormat

    PCX                    TPCXExportFormat

    VML (HTML)      TVMLExportFormat

    PDF                    TPDFExportFormat

    SVG                    TSVGExportFormat

    EPS                     TEPSExportFormat

    Flex(Flash)          TFlexExportFormat

    VRML 3D            TVRMLExportFormat

    XAML (WPF)       TXAMLExportFormat

    數(shù)據(jù)格式

    Text                    TSeriesDataText

    XML                    TSeriesDataXML

    HTML                  TSeriesDataHTML

    Excel                    TSeriesDataXLS

    其他格式

        Tee格式是一種靈活的格式,可存儲圖表屬性信息以及(可選)圖表數(shù)據(jù)。 文件很?。ㄈQ于數(shù)據(jù)),非常適合網(wǎng)絡用于更新基于實時客戶端的圖表。

    TEE(TeeChart)SaveChartToFile

        在運行時,您可以使用以下命令顯示導出對話框:

    圖表 TeeExport

    例:

    TeeExport( Self, Chart1 );

    示例導出

        可以導出到文件中,大部分情況,都只需要定義目標的文件名。

    例:

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

    導出圖像

    JPEG

        TeeChart本身并未包含導出方法,這是為了避免非JPEG應用程序的內存使用。

    例:

    // You need to include the Delphi JPEG unit in the Uses section of your project
    // Pass the name of the Chart to this function. We've fixed the parameters here.
    // In the demo they are presented as options for the user.
    // Place a Chart (Chart1) on a Form and populate it with data.
    
    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
     With GetChartJPEG(Chart1) do
     try
      SaveToFile('c:\temp\myJPEGChart.jpg');    { <-- save the JPEG to disk }
     finally
      Free;  { <-- free the temporary JPEG object }
     end;
    end;
    
    Function GetChartJPEG(AChart:TCustomChart):TJPEGImage;
    var tmpBitmap:TBitmap;
    begin
      result:=TJPEGImage.Create;   { <-- create a TJPEGImage }
    
      tmpBitmap:=TBitmap.Create;   { <-- create a temporary TBitmap }
      try
    
        tmpBitmap.Width :=AChart.Width;   { <-- set the bitmap dimensions }
        tmpBitmap.Height:=AChart.Height;
    
        { draw the Chart on the temporary Bitmap... }
        AChart.Draw(tmpBitmap.Canvas,Rect(0,0,tmpBitmap.Width,tmpBitmap.Height));
    
        { set the desired JPEG options... }
        With result do
        begin
          GrayScale            :=False;
          ProgressiveEncoding  :=True;
          CompressionQuality   :=50;  // % 0 - 100
          PixelFormat          :=jf24bit;  // or jf8bit
          ProgressiveDisplay   :=True;
          Performance          :=jpBestQuality;  // or jpBestSpeed
          Scale                :=jsFullSize;  // or jsHalf, jsQuarter, jsEighth
          Smoothing            :=True;
    
          { Copy the temporary Bitmap onto the JPEG image... }
          Assign(tmpBitmap);
        end;
      finally
        tmpBitmap.Free;  { <-- free the temporary Bitmap }
      end;
    end;

        性能,jpegBestQuality和壓縮質量百分比(高值減去壓縮)的存在將使文件更大,導出花費的時間會更長,但是導出的效果會更好,可以根據(jù)自己的需求來選擇。

    GIF

        TeeChart提供了創(chuàng)建GIF圖表圖像的方法,但您應該使用Unisys檢查您的許可位置,以便使用GIF LZW編碼圖像。 替代RLE編碼不受Unisys許可的約束。

    使用TeeChart對話的示例

    Uses TeeGIF, TeExport;
    
    procedure TGIFExportForm.Button1Click(Sender: TObject);
    begin
      TeeSavePanel(TGIFExportFormat,Chart1);
    end;

    示例代碼

    Uses TeeGIF, GIFImage;
    
    procedure TForm1.Button1Click(Sender: TObject);
    var tmpGIF : TGIFImage;
    begin
      tmpGIF:=TGIFImage.Create;
    
      With tmpGIF do
      begin
        Compression:=gcLZW;
        DitherMode:=dmStucki;
        ColorReduction:=rmQuantizeWindows;
    
        Assign(Chart1.TeeCreateBitmap(Chart1.Color,Rect(0,0,Chart1.Width,Chart1.Height)));
    
        SaveToFile('c:\tempCharts\Chart1.gif');
      end;
    end;

    PNG

        要使用PNG圖像格式,\ Windows \ System文件夾或路徑中需要有LPng.DLL。 PNG提供主要瀏覽器支持的壓縮圖像格式。

    例:

    Uses TeePNG, TeExport;
    
    procedure TPNGExportForm.Button1Click(Sender: TObject);
    begin
      TeeSavePanel(TPNGExportFormat,Chart1);
    end;

    導出數(shù)據(jù)

        TeeStore單元包括TSeriesData組件及其后代的定義:

    Text               TSeriesDataText

    XML               TSeriesDataXML

    HTML             TSeriesDataHTML

    Excel               TSeriesDataXLS (pre 2013 Excel xls) and TSeriesDataXLSObject (later versions of Excel for xlsx files)

        可以創(chuàng)建上述組件并將其與圖表系列相關聯(lián),從中可以將數(shù)據(jù)導出為文件, Stream或Clipboard。以下示例將圖表系列中的數(shù)據(jù)導出到HTML表:

      With TSeriesDataHTML.Create(Chart1,Series1) do
      Begin
        IncludeHeader:=True;
        SaveToFile('c:\tempdata\Series1HTMLData.txt');
      end;

    以上隨機數(shù)據(jù)集的輸出如下:

    Series1
    308
    267
    170
    192
    284
    265
    296
    335
    454

    Excel導出代碼的示例:

    uses TeeExcelSource
    
     try
       xlsexp := TSeriesDataXLSObject.Create(Chart1);
       xlsexp.IncludeHeader :=  True;
       xlsexp.IncludeIndex := True;
       xlsexp.SaveToFile('c:\temp\myExcelFile.xlsx');
     finally
       xlsexp.Free;
     end;

    TeeChart的Tee模板和數(shù)據(jù)導出/導入格式

    Tee files

        Tee files是TeeChart自己的模板格式,用于保存圖表及其數(shù)據(jù)。修改的圖表屬性隨模板一起保存,并將在模板導入新圖表時重現(xiàn)。

    優(yōu)點:

    • Tee文件的尺寸非常小,在大多數(shù)情況下,它提供了優(yōu)于純圖形格式(Quicker)的優(yōu)勢。

    • 模板的目標圖表是實時的,可以進行縮放和滾動,并修改其屬性。

    • 根據(jù)您的偏好,數(shù)據(jù)可以選擇包含在Tee模板中。

    SaveChartToFile / SaveChartToStream的聲明:

    procedure SaveChartToFile(AChart: TCustomChart; Const AName: String; IncludeData: Boolean);
    
     procedure SaveChartToStream(AChart: TCustomChart; AStream: TStream; IncludeData: Boolean);
    
     {See the TeeStore unit for more information}

    例:

    // Add the unit teestore to the 'Uses' section of your project
    
    With SaveDialog1 do
    begin
      Filter:='Teefiles|*.tee';
    
      if Execute then 
         SaveChartToFile(Chart1,SaveDialog1.FileName,True);
    end;

    導入

    導入Tee格式文件

        從本地文件源或http數(shù)據(jù)源導入已保存的Tee文件。

    示例導入Tee文件

    // Import from file
    
    procedure TForm1.Button1Click(Sender: TObject);
    var tmpChart : TCustomChart;
    begin
    
      Chart1.Free;   // Assuming Chart1 is already on the Form
      tmpChart:=TChart.Create(Self);
    
      With OpenDialog1 do
      begin
        Filter:= 'Teefiles|*.tee';
        if Execute then 
           LoadChartfromFile(tmpChart,OpenDialog1.FileName);
      end;
    
      Chart1 := tmpChart as TChart;
    
      With Chart1 do
      begin
        Parent:=Self;
      end;
    end;

        您還可以從URL,LoadChartFromURL導入TeeChart文件。

    ChartWebSource和SeriesTextSource

        可以通過LoadChartFromURL方法或ChartWebSource組件從遠程Web源導入Tee文件。 可以通過TSeriesTextSource組件導入CSV數(shù)據(jù)。


        TeeChart for .NET,TeeChart for JavaScript/HTML5TeeChart for Xamarin.Android均已加入在線訂購,現(xiàn)在搶購可立享特別優(yōu)惠?。?!

        關注慧聚IT微信公眾號???,了解產品的最新動態(tài)及最新資訊。

    dd2629f30d553d56ccaf7164fdcb784e-sz_28327.webp.jpg




    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();