饼图四舍五入到 100%
Rounding to 100% for pie chart
我将 3 个随机存在的整数相加,然后将每个单独的数字除以总和得到百分比。
保证我始终获得 100% 的最佳方法是什么?是否有任何 vb.net 函数可以帮助我解决这个问题,或者我基本上必须手动找到我的 3 个百分比之和与 100% 之间的差值,除以它,然后将其添加到我的 3 个百分比中。
您计算百分比,将除最后一个以外的所有百分比相加,然后从 100 中减去。如果您尝试分配误差,这将无济于事,因为它会像第一次计算一样四舍五入。
有时最好将误差加到最大数上,这样误差就不会太大
如何通过从 100 中减去其他切片的总和来四舍五入最后一个饼图切片?
Option Strict On
Option Explicit On
Option Infer Off
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim percent1 As Decimal = 33.33333D
Dim percent2 As Decimal = 12D
Dim percent3 As Decimal = 100 - (percent1 + percent2)
Dim totalPercent As Decimal = percent1 + percent2 + percent3
MsgBox(totalPercent.ToString)
End Sub
End Class
这是统计报告中非常常见的问题,目前还没有真正好的处理方法。直截了当地说,唯一可以保证每次将一个整体的四舍五入部分加起来等于原始整体的方法就是伪造你的数据。我知道,这个观点有点偏激,但确实如此。如果您想忠实于您的数据,您应该将四舍五入的值相加,如果它们相加不等于 100,请在屏幕某处显示一个脚注,说明“由于四舍五入,百分比相加可能不等于 100” .正确表示分布的唯一方法是以正确的方式四舍五入。
我将 3 个随机存在的整数相加,然后将每个单独的数字除以总和得到百分比。
保证我始终获得 100% 的最佳方法是什么?是否有任何 vb.net 函数可以帮助我解决这个问题,或者我基本上必须手动找到我的 3 个百分比之和与 100% 之间的差值,除以它,然后将其添加到我的 3 个百分比中。
您计算百分比,将除最后一个以外的所有百分比相加,然后从 100 中减去。如果您尝试分配误差,这将无济于事,因为它会像第一次计算一样四舍五入。
有时最好将误差加到最大数上,这样误差就不会太大
如何通过从 100 中减去其他切片的总和来四舍五入最后一个饼图切片?
Option Strict On
Option Explicit On
Option Infer Off
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim percent1 As Decimal = 33.33333D
Dim percent2 As Decimal = 12D
Dim percent3 As Decimal = 100 - (percent1 + percent2)
Dim totalPercent As Decimal = percent1 + percent2 + percent3
MsgBox(totalPercent.ToString)
End Sub
End Class
这是统计报告中非常常见的问题,目前还没有真正好的处理方法。直截了当地说,唯一可以保证每次将一个整体的四舍五入部分加起来等于原始整体的方法就是伪造你的数据。我知道,这个观点有点偏激,但确实如此。如果您想忠实于您的数据,您应该将四舍五入的值相加,如果它们相加不等于 100,请在屏幕某处显示一个脚注,说明“由于四舍五入,百分比相加可能不等于 100” .正确表示分布的唯一方法是以正确的方式四舍五入。