Excel直方图 - 分布线

时间:2017-04-06 04:26:53

标签: excel vba excel-vba histogram

我想在Excel中制作直方图,使用数据分析工具箱很容易。如果我想在1.png中自动设置,我可以使用此post自动获取垃圾箱,然后设置参考范围。

当我想要平滑的分配线时出现问题。如果我将图表类型更改为散点图平滑线,它会将列高度相互连接,如下图所示:

Histogram

但我真正想要的是紫色线(即直方图顶部覆盖的正态分布)。如果数据偏斜或通常具有不同的分布,则不希望这样。反正是否有参考数据分布的自动覆盖? (像R一样的东西)最好使用宏,但任何输入都会很棒。

1 个答案:

答案 0 :(得分:1)

我在我的图表中添加了一个Trendline(红色),然后将Trendline格式化为" Polynomial"它取得了类似于你所拥有的效果。 Polynomial Trendline

这里有一些以编程方式实现此目的的代码:

Sub AddPolynomialTrendline()
    Dim chrt As Chart
    Dim chrt_obj As ChartObject
    Dim trend As Trendline

    For Each chrt_obj In ActiveSheet.ChartObjects
    If chrt_obj.Name = "Chart1" Then
        With chrt_obj.Chart
            'the number after xlPolynomial is the order, which can be from 2 to 6
            Set trend = .SeriesCollection(1).Trendlines.Add(xlPolynomial, 6)
        End With
    End If
    Next chrt_obj
End Sub

希望这有帮助!