//缩放的技巧
//首先找到待缩放的区域,例如横轴x1-x2,纵轴y1-y2
//那么待放到的区域就是x=x1;x=x2;y=y1;y=y2;这四条线组成的矩形
//首先确定矩形的左上角的坐标,然后确定矩形的宽和高

需要注意的是TeeChart缩放,依赖的是像素点,所以需要求出的左上角的坐标是,像素点的坐标;

而像素点的坐标原点在TChar的左上角

通过代码来实现缩放

 /// <summary>
/// 缩放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button6_Click(object sender, EventArgs e)
{
//缩放的技巧
//首先找到待缩放的区域,例如横轴10-30,纵轴4-8
//那么待放到的区域就是x=10;x=30;y=4;y=8;这四条线组成的矩形
//首先确定矩形的左上角的坐标,然后确定矩形的宽和高
try
{
if (tChart1 != null)
{
if (tChart1.Series.Count > )
{
int x1 = Convert.ToInt32(textBox8.Text);//x轴的起始
int x2 = Convert.ToInt32(textBox9.Text);//x轴的结束
int y1 = Convert.ToInt32(textBox11.Text);
int y2 = Convert.ToInt32(textBox10.Text);
int x; int y; int height; int width; Rectangle r;
Series series = tChart1.Series[]; //单独横向
//xmin = series.CalcXPosValue(x1);
//xmax = series.CalcXPosValue(x2);
//ymin = series.CalcYPosValue(tChart1.Axes.Left.MinYValue);
//ymax = series.CalcYPosValue(tChart1.Axes.Left.MaxYValue);
//x = xmin;
//y = ymax;
//height = ymin - ymax;
//width = xmax - xmin;
//Console.WriteLine("x:{0},y:{1}", x, y);
//Console.WriteLine("width:{0},height:{1}", width, height);
//r = new Rectangle(x, y, width, height);//a和b代表的是矩形左上角的点的坐标
//tChart1.Zoom.ZoomRect(r); //单独纵向
//ymin = series.CalcYPosValue(y1);
//ymax = series.CalcYPosValue(y2);
//xmin = series.CalcXPosValue(tChart1.Axes.Bottom.MinXValue);
//xmax = series.CalcXPosValue(tChart1.Axes.Bottom.MaxXValue);
//x = xmin;
//y = ymax;
//height = ymin - ymax;
//width = xmax - xmin;
//Console.WriteLine("x:{0},y:{1}", x, y);
//Console.WriteLine("width:{0},height:{1}", width, height);
//r = new Rectangle(x, y, width, height);
//tChart1.Zoom.ZoomRect(r); x = series.CalcXPosValue(x1);
y = series.CalcYPosValue(y2);
width = series.CalcXPosValue(x2)-series.CalcXPosValue(x1);
height = series.CalcYPosValue(y1)-series.CalcYPosValue(y2);
r = new Rectangle(x, y, width, height);
tChart1.Zoom.ZoomRect(r);
}
}
}catch
{
}
}

实现后的效果

TeeChart缩放的更多相关文章

  1. TeeChart Pro 5.0

    这是Delphi7自带例子 C:\Program Files\Borland\Delphi7\Demos\TeeChart 以下为翻译的文字,有部分不准确. TeeChart Pro 5.0是一个库 ...

  2. TeeChart的X轴,使用伪装的时间

    TeeChart曲线的X轴是时间,但是频率很高.没法完全显示. 例如,一秒钟有2000个点,那么点与点的间隔为0.5毫秒. 使用TChart类的GetAxisLabel事件, 函数手册上对此事件的解释 ...

  3. TeeChart 的应用

    TeeChart 是一个很棒的绘图控件,不过由于里面没有注释,网上相关的资料也很少,所以在应用的时候只能是一点点的试.为了防止以后用到的时候忘记,我就把自己用到的东西都记录下来,以便以后使用的时候查询 ...

  4. ImageView缩放选项

    ImageView.ScaleType 将图片边界缩放到所在view边界时的缩放选项. Options for scaling the bounds of an image to the bounds ...

  5. Canvas绘图之平移translate、旋转rotate、缩放scale

    画布操作介绍 画布绘图的环境通过translate(),scale(),rotate(), setTransform()和transform()来改变,它们会对画布的变换矩阵产生影响. 函数 方法 描 ...

  6. 纯JS打造比QQ空间更强大的图片浏览器-支持拖拽、缩放、过滤、缩略图等

    在线演示地址(打开网页后,点击商家图册): http://www.sport7.cn/cc/jiangnan/football5.html 先看一看效果图: 该图片浏览器实现的功能如下: 1. 鼠标滚 ...

  7. Win10 字体模糊解决(DPI缩放禁用),设置默认输入法英文

    电脑坏了 , 换了新电脑, 但是新电脑,死活不能装win7, 装都不能装!!!郁闷了 好多地方字体模糊了,百般设置都不好看, 后来远程桌面到win2008server, 发现,在远程桌面里面居然很清晰 ...

  8. 【CSS3动画】transform对文字及图片的旋转、缩放、倾斜和移动

    前言:之前我有写过CSS3的transform这一这特性,对于它的用法,还不是很透彻,今天补充补充,呵呵 你懂的,小司机准备开车了. a)再提一提transform的四个属性 ①旋转--->ro ...

  9. 原创:CSS3技术-雪碧图自适应缩放与精灵动画方案

    花了一个礼拜完成了慕课网定制的七夕主题效果,其中有一个没实现好的功能,就是雪碧图的自适应缩放 ps: 以下实现都是基于移动端的处理 原图如下: 人物是采用的是雪碧图,通过坐标绝对数据取值 问题很明显, ...

随机推荐

  1. div+css网页标准布局实例教程(一)

    今天学习<十天学会web标准(div+css)>的最后一个章节,本章节把前面学习的零碎内容串联起来,组织成一个网站,将根据本人这些年来的从业经验,从建立站点到一个完整的div+css网页的 ...

  2. 仿照hibernate封装的一个对数据库操作的jdbc工具类

    package project02_Order_management.util; import java.io.IOException; import java.lang.reflect.Field; ...

  3. 使用PHP创建一个REST API(译)

    最近API在网络领域有些风靡,明确的说是REST的影响力.这实在没什么好惊讶的,因为在任何编程语言中,消费REST API都是非常的容易.构建它也非常的简单,因为本质上你不会用到任何那些已存在很久的H ...

  4. 如何修改WordPress网站默认登录地址wp-admin

    使用过WordPress程序建网站的学员都知道,我们使用Wordpress建好的网站,它的网站登录后台就是“网站域名/wp-admin”.如下图: 为了网站安全,如何修改Wordpress网站默认登录 ...

  5. R之ddlpy函数学习[转载]

    转自:https://www.cnblogs.com/aloiswei/p/6032513.html 1.函数 ddply(.data, .variables, .fun = NULL, ..., . ...

  6. 如何给Pycharm加上头行 # *_*coding:utf-8 *_*?

    File>Setting>Editor>Code Style>File and Code Templates>Python Script  后面加上 # *_*codin ...

  7. Hibernate—部分

    数据持久化的3种方式: merge()方法: 先得到对象的副本:再判断, 如果副本为瞬时状态,则用save()插入 如果副本为游离状态,则用update()更新 最终都是不改变传入对象的状态 save ...

  8. php PDO遇到的坑

    <?php $dbConn = new PDO( "mysql:host=localhost;dbname=adtuu",'root','root', array( // 强 ...

  9. mysql错误日志与通用日志

    错误日志 MySQL错误日志是记录MySQL 运行过程中较为严重的警告和错误信息,以及MySQL每次启动和关闭的详细信息. 1.错误日志路径查询 show variables like '%log_e ...

  10. MyBatis学习笔记(八)——Mybatis3.x与Spring4.x整合

    转自孤傲苍狼的博客:http://www.cnblogs.com/xdp-gacl/p/4271627.html 一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn arc ...