
- Plotly 教程
- Plotly - 首頁
- Plotly - 簡介
- Plotly - 環境設定
- Plotly - 線上和離線繪圖
- 在 Jupyter Notebook 中內聯繪圖
- Plotly - 包結構
- Plotly - 匯出為靜態影像
- Plotly - 圖例
- Plotly - 格式化座標軸和刻度
- Plotly - 子圖和內嵌圖
- Plotly - 條形圖和餅圖
- Plotly - 散點圖、Scattergl 圖和氣泡圖
- Plotly - 點圖和表格
- Plotly - 直方圖
- Plotly - 箱線圖、小提琴圖和等高線圖
- Plotly - 分佈圖、密度圖和誤差條形圖
- Plotly - 熱圖
- Plotly - 極座標圖和雷達圖
- Plotly - OHLC 圖、瀑布圖和漏斗圖
- Plotly - 3D 散點圖和曲面圖
- Plotly - 新增按鈕/下拉選單
- Plotly - 滑塊控制元件
- Plotly - FigureWidget 類
- Pandas 和 Cufflinks 配合 Plotly 使用
- Matplotlib 和 Chart Studio 配合 Plotly 使用
- Plotly 有用資源
- Plotly - 快速指南
- Plotly - 有用資源
- Plotly - 討論
Plotly - 分佈圖、密度圖和誤差條形圖
本章我們將詳細瞭解分佈圖、密度圖和誤差條形圖。讓我們從學習分佈圖開始。
分佈圖 (Distplots)
分佈圖圖形工廠顯示數值資料的統計表示組合,例如直方圖、核密度估計或正態曲線以及毛毯圖。
分佈圖可以由以下 3 個元件中的全部或任何組合組成:
- 直方圖
- 曲線:(a)核密度估計或(b)正態曲線,以及
- 毛毯圖 (rug plot)
figure_factory 模組具有create_distplot() 函式,該函式需要一個名為 hist_data 的必填引數。
以下程式碼建立一個包含直方圖、kde 圖和毛毯圖的基本分佈圖。
x = np.random.randn(1000) hist_data = [x] group_labels = ['distplot'] fig = ff.create_distplot(hist_data, group_labels) iplot(fig)
上面提到的程式碼的輸出如下:

密度圖
密度圖是根據資料估計的直方圖的平滑連續版本。最常見的估計形式稱為核密度估計 (KDE)。在這種方法中,在每個單獨的資料點處繪製一條連續曲線(核),然後將所有這些曲線加在一起以建立一個平滑的密度估計。
plotly.figure_factory._2d_density 模組中的create_2d_density() 函式返回二維密度圖的圖形物件。
以下程式碼用於生成直方圖資料上的二維密度圖。
t = np.linspace(-1, 1.2, 2000) x = (t**3) + (0.3 * np.random.randn(2000)) y = (t**6) + (0.3 * np.random.randn(2000)) fig = ff.create_2d_density( x, y) iplot(fig)
以下是上面給定程式碼的輸出。

誤差條形圖
誤差條是資料誤差或不確定性的圖形表示,它們有助於正確解釋。出於科學目的,錯誤報告對於理解給定資料至關重要。
誤差條對問題解決者很有用,因為誤差條顯示了一組測量值或計算值的置信度或精度。
誤差條主要表示資料集的範圍和標準差。它們可以幫助視覺化資料圍繞平均值的分佈情況。誤差條可以在各種圖上生成,例如條形圖、線圖、散點圖等。
go.Scatter() 函式具有error_x 和error_y 屬性,這些屬性控制誤差條的生成方式。
visible (布林值) - 確定這組誤差條是否可見。
Type 屬性的可能值為“percent” | “constant” | “sqrt” | “data”。它設定用於生成誤差條的規則。如果為“percent”,則條形長度對應於基礎資料的百分比。在此百分比中設定`value`。如果為“sqrt”,則條形長度對應於基礎資料的平方。如果為“data”,則條形長度使用資料集`array`設定。
symmetric 屬性可以為 true 或 false。相應地,誤差條的長度在兩個方向上相同或不同(垂直條的頂部/底部,水平條的左側/右側)。
array - 設定與每個誤差條長度相對應的資料。值相對於基礎資料繪製。
arrayminus - 設定與垂直(水平)條的底部(左側)方向的每個誤差條長度相對應的資料。值相對於基礎資料繪製。
以下程式碼在散點圖上顯示對稱誤差條:
trace = go.Scatter( x = [0, 1, 2], y = [6, 10, 2], error_y = dict( type = 'data', # value of error bar given in data coordinates array = [1, 2, 3], visible = True) ) data = [trace] layout = go.Layout(title = 'Symmetric Error Bar') fig = go.Figure(data = data, layout = layout) iplot(fig)
以下是上述程式碼的輸出。

透過以下指令碼渲染非對稱誤差圖:
trace = go.Scatter( x = [1, 2, 3, 4], y =[ 2, 1, 3, 4], error_y = dict( type = 'data', symmetric = False, array = [0.1, 0.2, 0.1, 0.1], arrayminus = [0.2, 0.4, 1, 0.2] ) ) data = [trace] layout = go.Layout(title = 'Asymmetric Error Bar') fig = go.Figure(data = data, layout = layout) iplot(fig)
其輸出如下所示:
