C#中在picturebox中作带有坐标轴的曲线图,就像下图一样的,我现在先在做坐标轴,我编了一段代码 5

privatevoidpictureBox1_Paint(objectsender,PaintEventArgse){Graphicsg=e.Graphics;Penre... private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
Pen redPen = new Pen(Color.Red, 0.5F);//画笔的宽度为0.5毫米
g.TranslateTransform(this.Location.X, this.Height+this.Location.Y);
int div = 19;
float gridWidth =this.Width / 20;
float h =this.Height;
for (int i = 0; i < div; i++)
{
g.DrawLine(redPen, (i + 1) * gridWidth, 0, (i + 1) * gridWidth, h);
}
}
但是运行后不出结果呀,求助呀,急急急
展开
 我来答
vvind2008
2013-04-09 · TA获得超过321个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:156万
展开全部
把g.TranslateTransform(this.Location.X, this.Height + this.Location.Y)删掉。
float gridWidth = ((PictureBox)sender).Width / (div + 1);
float h = ((PictureBox)sender).Height;
追问
我还想问下,如果我要画这个曲线的话应该怎么画呀,我有两个数组,一个数组放横坐标,一个数组放纵坐标,而且纵坐标的值很大,都是10000以上,如果我直接以10000的数值在坐标轴内话,这个点会超出坐标轴,因为实际的坐标轴没这么大,我应该怎么做,可以把根据这两个数组作出图呢
追答
先查询一下纵轴最大最小值,以纵轴最小值-5% 作为纵轴基准值,以((y最大值+5%)-(y最小值-5%))/ 高度 作为纵轴缩小因子。绘图Y坐标=  高度 - (y-纵轴基准值 ) / 纵轴缩小因子。
同理算X轴。绘图X坐标= (x-横轴基准值 ) / 横轴缩小因子。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式