
1个回答
展开全部
Graphics.DrawRectangle有好几个重载方法。你用的是
public void DrawRectangle(
Pen pen,
int x,
int y,
int width,
int height
)
如果数据(也就是矩形的Heigh)的差异不是很大,例如12个月的降雨量为:
92.2, 92.8,92.7,……,
用上面的函数作出的图形时,由于隐含的浮点到整型的转换,导致图形显示时,矩形的高度都为92!这不符合实际情况!
建议
1)用
public void DrawRectangle(
Pen pen,
float x,
float y,
float width,
float height
)
来作图
2)在保持图形大小不变的前提下,根据降雨量最大值和最小值,适当地“压缩”Y轴的坐标范围。例如Y轴只画出降雨量50~100。
更多追问追答
追问
那我改如何改呢?
追答
1)将数组Count改为float类型
float[] Count;
2)从数据库选出数据后,给数组Count赋值
Count[i]= Convert.ToSingle(dt.Table[i].Rows[0][0].ToString())*100.0 / total();
3)作图时
g.FillRectangle( myBrush, x, 340-Count[i] *26 / 10, 20.0, count[i]*26/10 );
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询