只能依靠你自己去划了...//画图例各项
PointF boxOrigin = new PointF(40,LegendBegin);
PointF textOrigin = new PointF(60,LegendBegin);
float percent = 0;
for(int i=0;i<nCount;i++)
{
graphics.FillRectangle(new SolidBrush(Color.FromKnownColor((KnownColor)(90+i))),boxOrigin.X,boxOrigin.Y,20,10);
graphics.DrawRectangle(Pens.Black,boxOrigin.X,boxOrigin.Y,20,10);
percent = Convert.ToSingle(((HistogramData) HistogramValues[i ]).Data/ _count * 100);
graphics.DrawString(((HistogramData)HistogramValues[i]).Brief + " - " + ((HistogramData) HistogramValues[i ]).Data.ToString() + " (" + percent.ToString("0") + "%)",new Font("Tahoma",8),Brushes.Black,textOrigin);
boxOrigin.Y += 15;
textOrigin.Y += 15;
if(textOrigin.Y >= LegendEnd - 15)
{
boxOrigin.Y = LegendBegin ;
textOrigin.Y = LegendBegin;
textOrigin.X += 200;
boxOrigin.X += 200;
}
}
PointF boxOrigin = new PointF(40,LegendBegin);
PointF textOrigin = new PointF(60,LegendBegin);
float percent = 0;
for(int i=0;i<nCount;i++)
{
graphics.FillRectangle(new SolidBrush(Color.FromKnownColor((KnownColor)(90+i))),boxOrigin.X,boxOrigin.Y,20,10);
graphics.DrawRectangle(Pens.Black,boxOrigin.X,boxOrigin.Y,20,10);
percent = Convert.ToSingle(((HistogramData) HistogramValues[i ]).Data/ _count * 100);
graphics.DrawString(((HistogramData)HistogramValues[i]).Brief + " - " + ((HistogramData) HistogramValues[i ]).Data.ToString() + " (" + percent.ToString("0") + "%)",new Font("Tahoma",8),Brushes.Black,textOrigin);
boxOrigin.Y += 15;
textOrigin.Y += 15;
if(textOrigin.Y >= LegendEnd - 15)
{
boxOrigin.Y = LegendBegin ;
textOrigin.Y = LegendBegin;
textOrigin.X += 200;
boxOrigin.X += 200;
}
}
//字符对齐格式
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Center;
//定义刷子
SolidBrush brush = new SolidBrush(CellFColor);
g.DrawString("字体", CellFont, brush, e.ClipRectangle, sf);