【问题标题】:Sum of Percentage exceeds 100% in winforms pie chartwinforms 饼图中的百分比总和超过 100%
【发布时间】:2015-01-22 13:30:55
【问题描述】:

Winforms 饼图中的百分比总和超过 100%,具有以下数据点。

series.Label = "#PERCENT{P0}"

  series.Points.AddXY("", 3);    // X=0 ,Y =3

  series.Points.AddXY("", 21);   // X=0 ,Y =21

我想,这可能是一个四舍五入的问题,有什么解决办法吗?提前致谢。

【问题讨论】:

  • 我会说四舍五入的问题。 3->12.5% = 13% 和 21->87.5 = 88%。您是否尝试在整数值后放置小数点。如果没有,我认为它会进行整数除法和舍入。那么将 3 替换为 3.0,将 21 替换为 21.0?
  • 我也试过了,但问题还是一样

标签: c# winforms pie-chart


【解决方案1】:

由于您的#PERCENT{,您的系列包含 { 3, 21 } 加起来为 24。3/24 = 12.5%(在您的情况下为 13%)和 21/24 = 87.5%(在您的情况下为 88%) P0} 格式表示没有小数位。

系列值显示为四舍五入到最接近的整数。

从以下位置更改您的标签格式:

series.Label = "#PERCENT{P0}"

...到:

series.Label = "#PERCENT"

【讨论】:

  • 显示 87.50 % 和 12.50 %。但我必须像 excel 图表一样显示 88 和 12,它总是将值显示为 88 % 和 12%。
  • @C-va 也许您可以在您的应用程序中运行一个快速计算,将系列总计为ints 然后floats,如果存在差异,则围绕其中一个值 在填充图表之前向下
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-24
相关资源
最近更新 更多