simple fit trace / linear regression example provided
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 38/100
- issue の種類
- ドキュメント
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- javascript
調査の方向性
この issue には、Plotly の散布図用の JavaScript による線形回帰の例がありますが、対象ファイルや例のエントリーポイントは指定されていません。まず graphing-library-docs のサンプルコレクションを見つけ、JavaScript の例がどのように整理されているかを確認してください。issue に示されている散布点、近似直線、R² ラベルを例で示し、適切な場所に追加できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
I just want to provide my simple code for plotting a linear fit into a scatter.
A feature that was requested for some time in plotly JS (https://github.com/plotly/plotly.js/issues/4921), maybe you can just add this code into your example collection, so people will be able to find this solution and modified it to their needs:
function linearRegression(x,y){
var lr = {};
var n = y.length;
var sum_x = 0;
var sum_y = 0;
var sum_xy = 0;
var sum_xx = 0;
var sum_yy = 0;
for (var i = 0; i < y.length; i++) {
sum_x += x[i];
sum_y += y[i];
sum_xy += (x[i]*y[i]);
sum_xx += (x[i]*x[i]);
sum_yy += (y[i]*y[i]);
}
lr['sl'] = (n * sum_xy - sum_x * sum_y) / (n*sum_xx - sum_x * sum_x);
lr['off'] = (sum_y - lr.sl * sum_x)/n;
lr['r2'] = Math.pow((n*sum_xy - sum_x*sum_y)/Math.sqrt((n*sum_xx-sum_x*sum_x)*(n*sum_yy-sum_y*sum_y)),2);
return lr;
}
var trace = {
x: [9.87, 9.69, 9.14, 9.71, 9.19, 9.5, 9.85, 9.52, 9.34, 9.42, 9.71, 9.53, 9.13, 9.05, 9.3, 9.81, 9.32, 9.8, 9.5, 10, 9.47, 9.19, 9, 9.94, 9.4, 9.18, 9.06, 9.39, 9.59, 9.26, 9.15],
y: [9.93, 9.85, 9.34, 9.69, 9.13, 9.4, 9.75, 9.5, 9.23, 9.45, 9.95, 9.68, 9.17, 9.2, 9.1, 10.01, 9.17, 9.99, 9.29, 10.04, 9.56, 9.2, 9.06, 9.77, 9.61, 9.09, 9.2, 9.18, 9.72, 9.1, 9.27],
name: "Scatter",
"marker": {"size": 5},
"mode": "markers",
"type": "scatter" };
var lr = linearRegression(trace.x, trace.y);
var fit_from = Math.min(...trace.x)
var fit_to = Math.max(...trace.x)
var fit = {
x: [fit_from, fit_to],
y: [fit_from*lr.sl+lr.off, fit_to*lr.sl+lr.off],
mode: 'lines',
type: 'scatter',
name: "R2=".concat((Math.round(lr.r2 * 10000) / 10000).toString())
};
var data = [ trace, fit ];
Plotly.newPlot('myDiv', data);

- 主要言語
- Jupyter Notebook
- スター
- 59
- フォーク
- 73
- 平均マージ
- 1日 9時間
- マージ済み PR(30日)
- 4
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
plotly/graphing-library-docs のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 58/100
plotly/graphing-library-docs#406 ·
-
documentation enhancement
plotly/graphing-library-docs#383 · 担当者 1 名 ·
-
documentation enhancement
plotly/graphing-library-docs#378 · 担当者 1 名 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 35/100
plotly/graphing-library-docs#341 ·
-
enhancement
plotly/graphing-library-docs#338 · コメント 1 件 · 担当者 1 名 ·
plotly/graphing-library-docs の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
SignalK/freeboard-sk#824 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
google/libultrahdr#485 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100