VS2013 TeeChart_v5 MFC C++ 使用手册干货(三)TeeChart ColorGrid类的简单使用

前面几步安装上面两节进行

1.注册TeeChart5

2.VS添加TeeChart控件并添加变量

3.添加所需类

ColorGrid绘制示例:此方法只适用于TeeChart_v5 VS2010, 在C++ 11.0 之后的版本需要对函数参数做以调整

void CMFCDemoDlg::CreateColorGrid()
{
    //image colorgrid
    COleSafeArray X;//color grid的横坐标
    COleSafeArray Z;//color grid的纵坐标,与我们常用的Y一样
    COleSafeArray Y;//表示的是颜色的值,不是Y轴
    
    DWORD numEle = 256*2;//数据长度
    X.Create(VT_I4,1,&numEle); //VT_I4 代表四字节 VT_R8 代表八字节
    Y.Create(VT_I4,1,&numEle);
    Z.Create(VT_I4,1,&numEle);

    int xidx=0,yidx=0;
    long i=0;
    
    for (xidx=0;xidx<2;xidx++)
    {
        for (yidx=0;yidx<256;yidx++)
        {
            int val = rand()%100;//二维数组对应的值
            YY.PutElement(&i,&val);
            XX.PutElement(&i,&xidx);
            ZZ.PutElement(&i,&yidx);
            i++;
        }
    }
    
    CSeries myseries = m_tchart.Series(0);
    CColorGridSeries mcolorGrid = myseries.get_asColorGrid();
    mcolorGrid .AddArrayXYZ(XX,YY,ZZ);//类型转换
}

参考来源:https://www.cnblogs.com/hikeepgoing/p/6017605.html

上述代码在 VS2013 运行后出来的是一条一条的彩色线,下面这种方法可以画出来较好的图线

	for (double i = 0; i < 1000; i++)
	{
		my_colorGrid.AddXYZ(x, Intensity_color, y, NULL, NULL);//色块的左下角坐标
		my_colorGrid.AddXYZ(x + 1, Intensity_color, y + 1, NULL, NULL);//色块的右下角坐标
	}

如图

在这里插入图片描述

这样就可以进行简单的ColorGrid图类的绘制。

展开阅读全文

没有更多推荐了,返回首页