TeeChart for .NET如何实现图表自定义数据点样式

作者:控件中国网   出处:控件中国网   2016-03-03 10:39:10   阅读:16

TeeChart for .NET是一款专业的图表控件,包含了很多种各个领域所涉及到的图表类型和图表功能,利用该控件可以创建各种交互式地图表应用程序,这篇文章主要介绍怎么利用该控件自定义数据点样式,下面的代码采用图片作为一个数据点来显示,具体参考下面的代码:
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Steema.TeeChart;
using Steema.TeeChart.Drawing;
using Steema.TeeChart.Editors;
 
 
namespace ChartSamples
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent(); 
      ImagePoint imagePoint = new ImagePoint(tChart1.Chart);
      imagePoint.Image = pictureBox1.Image;
      imagePoint.FillSampleValues(100);
    }
 
    private void tChart1_Click(object sender, EventArgs e)
    {
      tChart1.ShowEditor();
    }
  }
 
  public class ImagePoint : Steema.TeeChart.Styles.Points
  {
    private Image image;
 
    public ImagePoint(Steema.TeeChart.Chart c)
      : base(c)
    {
    }
 
    public Image Image
    {
      get { return image; }
      set { image = value; }
    }
 
    public override string Description
    {
      get
      {
        return "ImagePoint";
      }
    }
 
    public override void DrawValue(int index)
    {
      Rectangle R;
      if (image == null) base.DrawValue(index);
      else
      {
        Pointer.HorizSize = image.Width;
        Pointer.VertSize = image.Height;
        int left = CalcXPos(index) - (Pointer.HorizSize / 2);
        int top = CalcYPos(index) - (Pointer.VertSize / 2);
        R = Rectangle.FromLTRB(left,
        top,
        left + Pointer.HorizSize,
        top + Pointer.VertSize);
 
        Graphics3D g = Chart.Graphics3D;
        g.Draw(R, image, true);
      }
    }
  }
 
}
Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat