社区
界面
帖子详情
100分求助: MSchart控件的xy散点图怎么画
wdq007
2003-10-16 11:55:12
我要达到的功能
1。x轴从0~10
2。y轴从0~100
3。绘制10个点并连成曲线
我开始是用折线图的,但是折线图的起点的X坐标不在坐标原点上。后来我用xy散点图,但是出来的图x轴和y轴的单位长度是一样的,也就是说Y轴最大数值为100是x轴最大数值的十倍,结果出来的图变成一个高宽比为10:1的坐标图。
哪位大大能帮我解决这个问题,一定高分相送。
...全文
391
8
打赏
收藏
100分求助: MSchart控件的xy散点图怎么画
我要达到的功能 1。x轴从0~10 2。y轴从0~100 3。绘制10个点并连成曲线 我开始是用折线图的,但是折线图的起点的X坐标不在坐标原点上。后来我用xy散点图,但是出来的图x轴和y轴的单位长度是一样的,也就是说Y轴最大数值为100是x轴最大数值的十倍,结果出来的图变成一个高宽比为10:1的坐标图。 哪位大大能帮我解决这个问题,一定高分相送。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wdq007
2003-10-17
打赏
举报
回复
顶一下,哪位高人能帮我解决这鬼问题呀~~~~~
yushulei
2003-10-16
打赏
举报
回复
上面是从我程序中考过来的,可能由点乱。
那个data是自定义的一个数据类。你可以定义为一个二位数组,存放点的坐标,然后画出来就行了。
LuckFox
2003-10-16
打赏
举报
回复
关注!
yushulei
2003-10-16
打赏
举报
回复
CMSChart *pChart=(CMSChart*)GetDlgItem(mschart控件的id);
VARIANT var;
CVcValueScale yScale;//纵坐标对象
CVcCategoryScale xScale;//横坐标对象
yScale = pChart->GetPlot().GetAxis(1,var).GetValueScale();
yScale.SetAuto(FALSE);
xScale = pChart->GetPlot().GetAxis(0,var).GetCategoryScale();
xScale.SetAuto(FALSE);
pChart->SetColumnCount(1);
pChart->SetRowCount(10);
for(i=0;i<11;i++)
{
pChart->SetRow(i+1);
CString strRowLabel;
strRowLabel.Format("%d",i+1);
pChart->SetRowLabel(strRowLabel);
}
pChart->SetColumn(1);
for (int j = 0; j <11 ; j++)//nDataCount
{
pChart->SetRow(j+1);
strData.Format("%.2f",data.m_fData[j]);
pChart->SetData(strData);
}
daylight1980
2003-10-16
打赏
举报
回复
我觉得要实现的功能没有这么复杂吧。
就折线图可以了。
坐标可以设定的吗!
wdq007
2003-10-16
打赏
举报
回复
我觉得是散点图的赋值有点问题,但是xy散点图该怎么赋值呢?
lsl7909
2003-10-16
打赏
举报
回复
UP
wdq007
2003-10-16
打赏
举报
回复
好象还是不行,连mschart控件都显示不出来了,如果把下面的代码中禁止x,y轴自动缩放的代码注释掉,mschart可以显示,但是出来的图表就象我开贴里描述的一样。我不知道是不是我赋值的方法有问题?
比如我现在想显示一个Y=X*X的曲线图,mschart的type是xy散点图,把mschart控件和m_chartsd变量绑定了
代码如下:
#include "vcaxis.h"
#include "vcplot.h"
#include "vcaxisscale.h"
#include "vcvaluescale.h"
#include "vccategoryscale.h"
#include "vcdatagrid.h"
BOOL mcfxsdtx::OnInitDialog()
{
CDialog::OnInitDialog();
m_chartsd.SetFootnoteText("测试mschart");
VARIANT var;
m_chartsd.GetPlot().GetAxis(1,var).GetValueScale().SetAuto(FALSE);
m_chartsd.GetPlot().GetAxis(0,var).GetCategoryScale().SetAuto(FALSE);
CString sLabel;
m_chartsd.SetColumnCount(1); //1个项目,1条曲线
m_chartsd.SetRowCount(10); //显示10个刻度
//设置坐标的
for(int i=0;i<10;i++)
{
m_chartsd.SetRow(i+1);
sLabel.Format("%d",i+1);
m_chartsd.SetRowLabel(sLabel);
}
m_chartsd.SetColumn(1);
// 以下代码段为给ms_chart控件绑定数据的代码
COleSafeArray saRet;
DWORD numElements[] = {10, 2}; // 10x2
saRet.Create(VT_R8, 2, numElements); // Create the safe-array...
// Initialize it with values...
long index[2];
double val;
for(index[0]=0; index[0]<10; index[0]++)
{
index[1]=0;
val= index[0];
saRet.PutElement(index, &val);
index[1]=1;
val = index[0] * index[0];
saRet.PutElement(index, &val);
}
// Return the safe-array encapsulated in a VARIANT...
m_chartsd.SetChartData(saRet.Detach());
m_chartsd.Refresh();
return TRUE;
}
如何用计算机
画
散点图
,vb用MS
char
t怎样
画
散点图
使用TIMER
控件
定时保存数据代码:Private Sub Timer3_Timer()If Label5.Caption <> CStr(Time$) ThenLabel5.Caption = Time$sum_zj = sum_zj + 1'校准If sum_zj >= 60 Thensum_zj = sum_zj - ...
VB ms
char
t
控件
的使用
VB ms
char
t
控件
的使用 图表
控件
的类型 VtCh
Char
tType3dBar 0 3维条形图 VtCh
Char
tType2dBar 1 2维条形图 VtCh
Char
tType3dLine 2 3维折线图 VtCh
Char
tType2dLine 3 2维折线图 -----一維數組一條折線,兩維數...
ms
char
t
散点图
VtCh
Char
tType2d
XY
实例
' 当设置图形为二维
散点图
,
画
一条曲线时需定义一个二维数组MyData(0 to n,0 to 1),赋值方法如下 ' ******* X轴********y轴******* ' MyData(0,0)=1:MyData(0,1)=1 ' MyData(1,0)=1:MyData(1,1)=1 ' ......... ' ...
图表
控件
--MS
Char
t(1)
数据图表/报表技术 图表/报表是数据信息输出最常用的格式,在各类管理系统中具有重要的作用和地位。... 27.1 图 表 技 术 在实际编程过程中,有时需要将查询统计出来的数据用以图
Ms
char
t
由于MS
Char
t
控件
不是标准
控件
,要使用MS
Char
t
控件
必需要将MS
Char
t
控件
添加到
控件
工具箱中。添加MS
Char
t
控件
的方法为选择"工程"|"部件"命令,在出现的"部件"对话框中选择"Microsoft MS
Char
t Controls 6.0(SP4)"选项并...
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章