mirror of
https://github.com/oliexdev/openScale.git
synced 2025-08-24 17:23:03 +02:00
calculate trend line like The Hacker's Diet, see issue #436
This commit is contained in:
@@ -25,7 +25,6 @@ import android.preference.PreferenceManager;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.MotionEvent;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.github.mikephil.charting.charts.LineChart;
|
||||
import com.github.mikephil.charting.components.AxisBase;
|
||||
@@ -623,12 +622,9 @@ public class ChartMeasurementView extends LineChart {
|
||||
}
|
||||
}
|
||||
|
||||
addTrendLine(lineDataSets);
|
||||
addGoalLine(lineDataSets);
|
||||
|
||||
if (isInGraphKey) {
|
||||
addRegressionLine(lineDataSets);
|
||||
}
|
||||
|
||||
LineData data = new LineData(lineDataSets);
|
||||
setData(data);
|
||||
|
||||
@@ -648,6 +644,7 @@ public class ChartMeasurementView extends LineChart {
|
||||
measurementLine.setColor(measurementView.getColor());
|
||||
measurementLine.setValueTextColor(ColorUtil.getTintColor(getContext()));
|
||||
measurementLine.setCircleColor(measurementView.getColor());
|
||||
measurementLine.setCircleHoleColor(measurementView.getColor());
|
||||
measurementLine.setAxisDependency(measurementView.getSettings().isOnRightAxis() ? YAxis.AxisDependency.RIGHT : YAxis.AxisDependency.LEFT);
|
||||
measurementLine.setHighlightEnabled(true);
|
||||
measurementLine.setDrawHighlightIndicators(true);
|
||||
@@ -656,6 +653,10 @@ public class ChartMeasurementView extends LineChart {
|
||||
measurementLine.setHighLightColor(Color.RED);
|
||||
measurementLine.setDrawCircles(prefs.getBoolean("pointsEnable", true));
|
||||
measurementLine.setDrawValues(prefs.getBoolean("labelsEnable", true));
|
||||
if (prefs.getBoolean("trendLine", true)) {
|
||||
// show only data point if trend line is enabled
|
||||
measurementLine.enableDashedLine(0, 1, 0);
|
||||
}
|
||||
measurementLine.setValueFormatter(new ValueFormatter() {
|
||||
@Override
|
||||
public String getPointLabel(Entry entry) {
|
||||
@@ -712,51 +713,60 @@ public class ChartMeasurementView extends LineChart {
|
||||
}
|
||||
}
|
||||
|
||||
private void addRegressionLine(List<ILineDataSet> lineDataSets) {
|
||||
if (prefs.getBoolean("regressionLine", false)) {
|
||||
int regressLineOrder = 1;
|
||||
private void addTrendLine(List<ILineDataSet> lineDataSets) {
|
||||
if (!prefs.getBoolean("trendLine", true)) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
regressLineOrder = Integer.parseInt(prefs.getString("regressionLineOrder", "1"));
|
||||
} catch (NumberFormatException e) {
|
||||
Toast.makeText(getContext(), getContext().getString(R.string.error_value_required) + ":" + e.getMessage(), Toast.LENGTH_LONG).show();
|
||||
prefs.edit().putString("regressionLineOrder", "1").apply();
|
||||
List<ILineDataSet> trendlineDataSets = new ArrayList<>();
|
||||
|
||||
for (ILineDataSet dataSet : lineDataSets) {
|
||||
// we need at least two data points
|
||||
if (dataSet.getEntryCount() < 2) {
|
||||
continue;
|
||||
}
|
||||
|
||||
List<ILineDataSet> regressionLineDataSets = new ArrayList<>();
|
||||
PolynomialFitter polyFitter = new PolynomialFitter(1);
|
||||
|
||||
for (ILineDataSet dataSet : lineDataSets) {
|
||||
PolynomialFitter polyFitter = new PolynomialFitter(Math.min(regressLineOrder, 100));
|
||||
List<Entry> valuesTrendLine = new Stack<>();
|
||||
valuesTrendLine.add(dataSet.getEntryForIndex(0));
|
||||
polyFitter.addPoint((double) valuesTrendLine.get(0).getX(), (double) valuesTrendLine.get(0).getY());
|
||||
|
||||
for (int i=0; i<dataSet.getEntryCount(); i++) {
|
||||
Entry entry = dataSet.getEntryForIndex(i);
|
||||
polyFitter.addPoint((double) entry.getX(), (double) entry.getY());
|
||||
}
|
||||
for (int i = 1; i < dataSet.getEntryCount(); i++) {
|
||||
Entry entry = dataSet.getEntryForIndex(i);
|
||||
Entry trendPreviousEntry = valuesTrendLine.get(i - 1);
|
||||
float trendYValue = (trendPreviousEntry.getY() + 0.1f * (entry.getY() - trendPreviousEntry.getY()));
|
||||
polyFitter.addPoint((double) entry.getX(), (double) trendYValue);
|
||||
valuesTrendLine.add(new Entry(entry.getX(), trendYValue));
|
||||
/*Timber.d("ENTRY X " + entry.getX() + " Y " + entry.getY());
|
||||
Timber.d("PREVIOUS X " + trendPreviousEntry.getX() + " Y " + trendPreviousEntry.getY());
|
||||
Timber.d("TREND X " + entry.getX() + " Y " + trendYValue);*/
|
||||
}
|
||||
|
||||
if (isInGraphKey) {
|
||||
PolynomialFitter.Polynomial polynomial = polyFitter.getBestFit();
|
||||
|
||||
List<Entry> valuesLinearRegression = new Stack<>();
|
||||
|
||||
for (int i = minXValue; i < maxXValue + minXValue + 1; i++) {
|
||||
int x_last = (int) dataSet.getEntryForIndex(dataSet.getEntryCount() - 1).getX();
|
||||
for (int i = x_last; i < maxXValue + minXValue + 1; i++) {
|
||||
double y_value = polynomial.getY(i);
|
||||
valuesLinearRegression.add(new Entry((float) i, (float) y_value));
|
||||
valuesTrendLine.add(new Entry((float) i, (float) y_value));
|
||||
}
|
||||
|
||||
LineDataSet linearRegressionLine = new LineDataSet(valuesLinearRegression, dataSet.getLabel() + "-" + getContext().getString(R.string.label_regression_line));
|
||||
linearRegressionLine.setLineWidth(1.5f);
|
||||
linearRegressionLine.setColor(dataSet.getColor());
|
||||
linearRegressionLine.setAxisDependency(dataSet.getAxisDependency());
|
||||
linearRegressionLine.setDrawValues(false);
|
||||
linearRegressionLine.setDrawCircles(false);
|
||||
linearRegressionLine.setHighlightEnabled(false);
|
||||
linearRegressionLine.enableDashedLine(10, 30, 0);
|
||||
|
||||
regressionLineDataSets.add(linearRegressionLine);
|
||||
}
|
||||
|
||||
for (ILineDataSet dataSet : regressionLineDataSets) {
|
||||
lineDataSets.add(dataSet);
|
||||
}
|
||||
LineDataSet trendLine = new LineDataSet(valuesTrendLine, dataSet.getLabel() + "-" + getContext().getString(R.string.label_trend_line));
|
||||
trendLine.setLineWidth(1.5f);
|
||||
trendLine.setColor(dataSet.getColor());
|
||||
trendLine.setAxisDependency(dataSet.getAxisDependency());
|
||||
trendLine.setDrawValues(false);
|
||||
trendLine.setDrawCircles(false);
|
||||
trendLine.setHighlightEnabled(false);
|
||||
//trendLine.enableDashedLine(10, 30, 0);
|
||||
|
||||
trendlineDataSets.add(trendLine);
|
||||
}
|
||||
|
||||
for (ILineDataSet dataSet : trendlineDataSets) {
|
||||
lineDataSets.add(dataSet);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -25,8 +25,6 @@ import com.health.openscale.R;
|
||||
|
||||
public class GraphPreferences extends PreferenceFragmentCompat {
|
||||
|
||||
private static final String PREFERENCE_KEY_REGRESSION_LINE_ORDER = "regressionLineOrder";
|
||||
|
||||
@Override
|
||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||
setPreferencesFromResource(R.xml.graph_preferences, rootKey);
|
||||
|
@@ -111,46 +111,49 @@
|
||||
android:id="@+id/showMenu"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:scaleType="centerInside"
|
||||
app:fabSize="mini"
|
||||
app:srcCompat="@drawable/ic_show"
|
||||
android:layout_below="@id/deleteMenu"
|
||||
app:layout_anchor="@id/editMenu"
|
||||
android:clickable="true"
|
||||
android:visibility="gone"
|
||||
app:layout_anchorGravity="top"
|
||||
android:layout_gravity="top|end"
|
||||
app:pressedTranslationZ="12dp" />
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:tint="@color/widgetTextColor"
|
||||
android:visibility="gone"
|
||||
app:fabSize="mini"
|
||||
app:layout_anchor="@id/editMenu"
|
||||
app:layout_anchorGravity="top"
|
||||
app:pressedTranslationZ="12dp"
|
||||
app:srcCompat="@drawable/ic_show" />
|
||||
|
||||
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||
android:id="@+id/editMenu"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:fabSize="mini"
|
||||
android:scaleType="centerInside"
|
||||
app:srcCompat="@drawable/ic_editable"
|
||||
android:layout_above="@id/deleteMenu"
|
||||
app:backgroundTint="#99CC00"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:tint="@color/widgetTextColor"
|
||||
android:visibility="gone"
|
||||
app:backgroundTint="#99CC00"
|
||||
app:fabSize="mini"
|
||||
app:layout_anchor="@id/chartView"
|
||||
app:layout_anchorGravity="right|center_vertical"
|
||||
app:pressedTranslationZ="12dp"/>
|
||||
app:pressedTranslationZ="12dp"
|
||||
app:srcCompat="@drawable/ic_editable" />
|
||||
|
||||
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||
android:id="@+id/deleteMenu"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:fabSize="mini"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_gravity="bottom|end"
|
||||
android:clickable="true"
|
||||
android:scaleType="centerInside"
|
||||
android:tint="@color/widgetTextColor"
|
||||
android:visibility="gone"
|
||||
app:srcCompat="@drawable/ic_delete"
|
||||
app:backgroundTint="#FF4444"
|
||||
app:fabSize="mini"
|
||||
app:layout_anchor="@id/editMenu"
|
||||
app:layout_anchorGravity="bottom"
|
||||
android:layout_gravity="bottom|end"
|
||||
app:pressedTranslationZ="12dp"/>
|
||||
app:pressedTranslationZ="12dp"
|
||||
app:srcCompat="@drawable/ic_delete" />
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/progressBar"
|
||||
|
@@ -136,8 +136,6 @@
|
||||
<string name="label_not_found">غير موجود</string>
|
||||
<string name="label_ignoreOutOfRange">تجاهل خارج نطاق البيانات</string>
|
||||
<string name="label_initial_weight">الوزن البدائي</string>
|
||||
<string name="label_regression_line">خط الوزن الانحداري</string>
|
||||
<string name="label_regression_line_degree">خط انحداري متعدد الحدود</string>
|
||||
<string name="label_goal_line">خط الهدف</string>
|
||||
<string name="label_help">مساعدة</string>
|
||||
<string name="label_feedback_message_enjoying">استمتعت ب openScale؟</string>
|
||||
|
@@ -119,8 +119,6 @@
|
||||
<string name="label_not_found">no s\'ha trobat</string>
|
||||
<string name="label_ignoreOutOfRange">Ignora les dades fora del rang</string>
|
||||
<string name="label_initial_weight">Pes inicial</string>
|
||||
<string name="label_regression_line">Línia de regressió</string>
|
||||
<string name="label_regression_line_degree">Grau del polinomi de regressió</string>
|
||||
<string name="label_goal_line">Línia de l\'objectiu</string>
|
||||
<string name="error_max_scale_users">S\'ha assolit el nombre màxim d\'usuaris simultanis de la bàscula</string>
|
||||
<string name="info_step_on_scale_for_reference">Pugeu a la bàscula amb els peus nus per a obtenir les mesures de referència</string>
|
||||
|
@@ -189,8 +189,6 @@
|
||||
<string name="label_enable_legend">Legenda grafu</string>
|
||||
<string name="label_enable_yaxis">Osa Y</string>
|
||||
<string name="label_enable_labels">Popisek dat</string>
|
||||
<string name="label_regression_line">Regresivní křivka</string>
|
||||
<string name="label_regression_line_degree">Stupeň polynomické regrese</string>
|
||||
<string name="label_goal_line">Cílová čára</string>
|
||||
<string name="info_step_on_scale_for_reference">Stoupněte na váhu naboso pro referenční měření</string>
|
||||
<string name="info_step_on_scale">Stoupněte na váhu naboso</string>
|
||||
|
@@ -119,8 +119,6 @@
|
||||
<string name="label_not_found">blev ikke fundet</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorér data udenfor interval</string>
|
||||
<string name="label_initial_weight">Startvægt</string>
|
||||
<string name="label_regression_line">Vægt tilbagegang</string>
|
||||
<string name="label_regression_line_degree">Grad af tilbagegang</string>
|
||||
<string name="label_goal_line">Mållinje</string>
|
||||
<string name="error_max_scale_users">Det maksimale antal brugere er nået</string>
|
||||
<string name="info_step_on_scale_for_reference">Træd op på vægten med bare fødder for at foretagen en referencemåling</string>
|
||||
|
@@ -110,8 +110,6 @@
|
||||
<string name="error_initial_weight_required">Anfangsgewicht ist erforderlich</string>
|
||||
<string name="label_bt_device_no_support">Gerät wird nicht unterstützt</string>
|
||||
<string name="label_goal_line">Ziellinie</string>
|
||||
<string name="label_regression_line">Regressionsgerade</string>
|
||||
<string name="label_regression_line_degree">Polynomischer Regressions-Grad</string>
|
||||
<string name="label_bluetooth_searching">Suche nach Ihrer Bluetooth Waagen</string>
|
||||
<string name="label_bone">Knochenmasse</string>
|
||||
<string name="label_bmr">Grundumsatz (BMR)</string>
|
||||
|
@@ -129,8 +129,6 @@
|
||||
<string name="label_not_found">δεν βρέθηκε</string>
|
||||
<string name="label_ignoreOutOfRange">Αγνόησε δεδομένα εκτός εύρους</string>
|
||||
<string name="label_initial_weight">Αρχικό βάρος</string>
|
||||
<string name="label_regression_line">Γραμμή παλινδρόμησης</string>
|
||||
<string name="label_regression_line_degree">Πολυώνυμος βαθμός οπισθοδρόμησης</string>
|
||||
<string name="label_goal_line">Γραμμή στόχου</string>
|
||||
<string name="label_help">Βοήθεια</string>
|
||||
<string name="label_feedback_message_enjoying">Απολαμβάνετε το ανοιχτόςΖυγός;</string>
|
||||
|
@@ -119,8 +119,6 @@
|
||||
<string name="label_not_found">no encontrado</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorar datos fuera de límites</string>
|
||||
<string name="label_initial_weight">Peso inicial</string>
|
||||
<string name="label_regression_line">Línea de regresión</string>
|
||||
<string name="label_regression_line_degree">Grado de polinomio de regresión</string>
|
||||
<string name="label_goal_line">Línea del objetivo</string>
|
||||
<string name="error_max_scale_users">Máximo número de usuarios concurrentes alcanzado</string>
|
||||
<string name="info_step_on_scale_for_reference">Párese con los pies descalzos en la báscula para tomar medidas de referencia</string>
|
||||
|
@@ -157,8 +157,6 @@
|
||||
<string name="label_export_dir">Dossier pour l\'exportation</string>
|
||||
<string name="label_not_found">Non trouvé</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorer les valeurs hors de plage valide</string>
|
||||
<string name="label_regression_line">Ligne de régression</string>
|
||||
<string name="label_regression_line_degree">Degré du polynôme pour la ligne</string>
|
||||
<string name="label_goal_line">Ligne pour l\'objectif</string>
|
||||
<string name="label_feedback_message_enjoying">Êtes-vous satisfait d\'openScale ?</string>
|
||||
<string name="label_feedback_message_rate_app">Laisser une évaluation sur Google Play ou GitHub ?</string>
|
||||
|
@@ -126,8 +126,6 @@
|
||||
<string name="label_not_found">non atopado</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorar datos fóra de rango</string>
|
||||
<string name="label_initial_weight">Peso inicial</string>
|
||||
<string name="label_regression_line">Liña de tendencia de peso</string>
|
||||
<string name="label_regression_line_degree">Grao do polinomio de regresión (tendencia)</string>
|
||||
<string name="label_goal_line">Liña do obxectivo</string>
|
||||
<string name="label_help">Axuda</string>
|
||||
<string name="label_feedback_message_enjoying">Gústache openScale?</string>
|
||||
|
@@ -131,8 +131,6 @@
|
||||
<string name="label_not_found">nije pronađeno</string>
|
||||
<string name="label_ignoreOutOfRange">Zanemari podatke izvan granica</string>
|
||||
<string name="label_initial_weight">Početna težina</string>
|
||||
<string name="label_regression_line">Linija regresije</string>
|
||||
<string name="label_regression_line_degree">Polinom regresije</string>
|
||||
<string name="label_goal_line">Ciljana linija</string>
|
||||
<string name="label_help">Pomoć</string>
|
||||
<string name="label_feedback_message_enjoying">Sviđa ti se openScale\?</string>
|
||||
|
@@ -125,8 +125,6 @@
|
||||
<string name="info_on_date">be</string>
|
||||
<string name="label_ignoreOutOfRange">Tartományon kívüli adat elhagyása</string>
|
||||
<string name="label_initial_weight">Kezdő súly</string>
|
||||
<string name="label_regression_line">Regressziós egyenes</string>
|
||||
<string name="label_regression_line_degree">Polinom regresszió foka</string>
|
||||
<string name="label_goal_line">Cél vonal</string>
|
||||
<string name="label_help">Segítség</string>
|
||||
<string name="label_feedback_message_enjoying">Élvezi az openScale-t\?</string>
|
||||
|
@@ -129,8 +129,6 @@
|
||||
<string name="label_not_found">non trovato</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorare i dati fuori intervallo</string>
|
||||
<string name="label_initial_weight">Peso iniziale</string>
|
||||
<string name="label_regression_line">Retta di regressione</string>
|
||||
<string name="label_regression_line_degree">Grado di regressione polinomiale</string>
|
||||
<string name="label_goal_line">Linea obiettivo</string>
|
||||
<string name="label_help">Aiuto</string>
|
||||
<string name="label_feedback_message_enjoying">Ti piace openScale?</string>
|
||||
|
@@ -131,8 +131,6 @@
|
||||
<string name="label_not_found">לא נמצא</string>
|
||||
<string name="label_ignoreOutOfRange">התעלמות מנתונים מחוץ לטווח</string>
|
||||
<string name="label_initial_weight">משקל ראשוני</string>
|
||||
<string name="label_regression_line">קו נסיגתי</string>
|
||||
<string name="label_regression_line_degree">רמה פולינומית של נסיגה</string>
|
||||
<string name="label_goal_line">קו יעד</string>
|
||||
<string name="label_help">עזרה</string>
|
||||
<string name="label_feedback_message_enjoying">השימוש ב־openScale מטיב עמך\?</string>
|
||||
|
@@ -168,8 +168,6 @@
|
||||
<string name="label_category_measurement_database">測定データベース</string>
|
||||
<string name="label_export_dir">エクスポートディレクトリー</string>
|
||||
<string name="label_not_found">見つかりません</string>
|
||||
<string name="label_regression_line">回帰線</string>
|
||||
<string name="label_regression_line_degree">回帰多項式次数</string>
|
||||
<string name="label_goal_line">目標線</string>
|
||||
<string name="error_max_scale_users">最大同時測定のユーザー数に達しました</string>
|
||||
<string name="info_step_on_scale">裸足で体重計に載ってください</string>
|
||||
|
@@ -128,8 +128,6 @@
|
||||
<string name="label_not_found">발견되지 않음</string>
|
||||
<string name="label_ignoreOutOfRange">범위를 벗어난 데이터 무시</string>
|
||||
<string name="label_initial_weight">초기 무게</string>
|
||||
<string name="label_regression_line">회귀 무게 선</string>
|
||||
<string name="label_regression_line_degree">회귀 다항식 차수</string>
|
||||
<string name="label_goal_line">목표선</string>
|
||||
<string name="label_help">도움말</string>
|
||||
<string name="label_feedback_message_enjoying">openScale을 잘 사용하고 계신가요\?</string>
|
||||
|
@@ -130,8 +130,6 @@
|
||||
<string name="label_not_found">ikke funnet</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorer data utenfor rekkevidde</string>
|
||||
<string name="label_initial_weight">Startvekt</string>
|
||||
<string name="label_regression_line">Regresjonslinje</string>
|
||||
<string name="label_regression_line_degree">Regresjonspolynom-grunntall</string>
|
||||
<string name="label_goal_line">Mållinje</string>
|
||||
<string name="label_help">Hjelp</string>
|
||||
<string name="label_feedback_message_enjoying">Setter du pris på openScale?</string>
|
||||
|
@@ -130,8 +130,6 @@
|
||||
<string name="label_not_found">niet gevonden</string>
|
||||
<string name="label_ignoreOutOfRange">Gegevens buiten bereik negeren</string>
|
||||
<string name="label_initial_weight">Startgewicht</string>
|
||||
<string name="label_regression_line">Regressiegewichtslijn</string>
|
||||
<string name="label_regression_line_degree">Regressiepolynoomgraad</string>
|
||||
<string name="label_goal_line">Doellijn</string>
|
||||
<string name="label_help">Hulp</string>
|
||||
<string name="label_feedback_message_enjoying">Gebruik je openScale graag\?</string>
|
||||
|
@@ -130,8 +130,6 @@
|
||||
<string name="label_not_found">nie znaleziono</string>
|
||||
<string name="label_ignoreOutOfRange">Ignoruj dane spoza zakresu</string>
|
||||
<string name="label_initial_weight">Waga początkowa</string>
|
||||
<string name="label_regression_line">Krzywa aproksymacji</string>
|
||||
<string name="label_regression_line_degree">Stopień wielomianu aproksymacji</string>
|
||||
<string name="label_goal_line">Linia celu</string>
|
||||
<string name="label_help">Pomoc</string>
|
||||
<string name="label_feedback_message_enjoying">Podoba Ci się openScale?</string>
|
||||
|
@@ -83,8 +83,6 @@
|
||||
<string name="label_no">Não</string>
|
||||
<string name="label_ok">OK</string>
|
||||
<string name="label_not_found">não encontrado</string>
|
||||
<string name="label_regression_line">Linha de tendência de peso</string>
|
||||
<string name="label_regression_line_degree">Grau de regressão polinomial (tendência)</string>
|
||||
<string name="label_reminder">Lembrete</string>
|
||||
<string name="label_reminder_notify_text">Título da notificação</string>
|
||||
<string name="label_reminder_time">Hora</string>
|
||||
|
@@ -140,8 +140,6 @@
|
||||
<string name="label_not_found">negăsit</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorare a valorilor invalide</string>
|
||||
<string name="label_initial_weight">Greutate inițială</string>
|
||||
<string name="label_regression_line">Linie de regresie</string>
|
||||
<string name="label_regression_line_degree">Gradul polinomului</string>
|
||||
<string name="label_goal_line">Linie pentru obiectiv</string>
|
||||
<string name="label_help">Ajutor</string>
|
||||
|
||||
|
@@ -172,8 +172,6 @@
|
||||
<string name="label_enable_labels">Метка данных</string>
|
||||
<string name="default_value_reminder_notify_text">Пора взвеситься</string>
|
||||
<string name="info_on_date">в день</string>
|
||||
<string name="label_regression_line">График снижения веса</string>
|
||||
<string name="label_regression_line_degree">Степень полиномиальной регрессии</string>
|
||||
<string name="label_feedback_message_rate_app">Поставить оценку на Google Play или GitHub\?</string>
|
||||
<string name="trisa_scale_not_paired">Эти весы не были подключены!
|
||||
\n
|
||||
|
@@ -113,8 +113,6 @@
|
||||
<string name="label_not_found">nenájdený</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorovať údaje mimo rozsah</string>
|
||||
<string name="label_initial_weight">Počiatočná hmotnosť</string>
|
||||
<string name="label_regression_line">Vývoj úbytku</string>
|
||||
<string name="label_regression_line_degree">Stupeň polynomiálnej regresie</string>
|
||||
<string name="label_goal_line">Cieľová línia</string>
|
||||
<string name="error_max_scale_users">Dosiahli ste maximálny počet používateľov</string>
|
||||
<string name="info_step_on_scale_for_reference">Prosím, postavte sa na váhu pre referenčné meranie</string>
|
||||
|
@@ -152,8 +152,6 @@
|
||||
<string name="label_not_found">nič ni bilo najdeno</string>
|
||||
<string name="label_ignoreOutOfRange">Ignoriraj vrednosti zunaj meje</string>
|
||||
<string name="label_initial_weight">Začetna teža</string>
|
||||
<string name="label_regression_line">Regresijska krivulja teže</string>
|
||||
<string name="label_regression_line_degree">Regresija polinomske stopnje</string>
|
||||
<string name="label_goal_line">Ciljna krivulja</string>
|
||||
<string name="label_help">Pomoč</string>
|
||||
|
||||
|
@@ -119,8 +119,6 @@
|
||||
<string name="label_not_found">hittades inte</string>
|
||||
<string name="label_ignoreOutOfRange">Ignorera data utanför intervall</string>
|
||||
<string name="label_initial_weight">Startvikt</string>
|
||||
<string name="label_regression_line">Regressionslinje</string>
|
||||
<string name="label_regression_line_degree">Regressions-polynom-gradtal</string>
|
||||
<string name="label_goal_line">Mållinje</string>
|
||||
<string name="error_max_scale_users">Max antal samtidiga våganvändare nått</string>
|
||||
<string name="info_step_on_scale_for_reference">Kliv upp barfota på vågen för referensmätningar</string>
|
||||
|
@@ -119,8 +119,6 @@
|
||||
<string name="label_not_found">Bulunamadı</string>
|
||||
<string name="label_ignoreOutOfRange">Aralığın dışındaki verileri yoksay</string>
|
||||
<string name="label_initial_weight">Başlangıç ağırlığı</string>
|
||||
<string name="label_regression_line">Ağırlık çizgisinde gerileme</string>
|
||||
<string name="label_regression_line_degree">polinom derecesinde gerileme</string>
|
||||
<string name="label_goal_line">Hedef çizgisi</string>
|
||||
<string name="error_max_scale_users">Ençok eşzamanlı tartı kullanıcı sayısına ulaştı</string>
|
||||
<string name="info_step_on_scale_for_reference">Referans ölçümleri için lütfen tartıya çıplak ayakla çıkın</string>
|
||||
|
@@ -135,8 +135,6 @@
|
||||
<string name="label_not_found">не знайдено</string>
|
||||
<string name="label_ignoreOutOfRange">Ігнорувати дані за межами діапазону</string>
|
||||
<string name="label_initial_weight">Початкова вага</string>
|
||||
<string name="label_regression_line">Графік зниження</string>
|
||||
<string name="label_regression_line_degree">Ступінь поліномінальної регресії</string>
|
||||
<string name="label_goal_line">Лінія мети</string>
|
||||
<string name="label_help">Допомога</string>
|
||||
<string name="label_feedback_message_enjoying">До вподоби openScale\?</string>
|
||||
|
@@ -149,8 +149,6 @@
|
||||
<string name="label_not_found">không tìm thấy</string>
|
||||
<string name="label_ignoreOutOfRange">Bỏ qua dữ liệu ngoài phạm vi</string>
|
||||
<string name="label_initial_weight">Trọng lượng ban đầu</string>
|
||||
<string name="label_regression_line">Đường trọng lượng hồi quy</string>
|
||||
<string name="label_regression_line_degree">Mức độ hồi quy đa thức</string>
|
||||
<string name="label_goal_line">Đường thẳng mục tiêu</string>
|
||||
<string name="label_help">Trợ giúp</string>
|
||||
|
||||
|
@@ -128,8 +128,6 @@
|
||||
<string name="label_not_found">尋找不到</string>
|
||||
<string name="label_ignoreOutOfRange">忽略超出範圍的資料</string>
|
||||
<string name="label_initial_weight">初始體重</string>
|
||||
<string name="label_regression_line">體重回歸線</string>
|
||||
<string name="label_regression_line_degree">回歸線曲度</string>
|
||||
<string name="label_goal_line">目標線</string>
|
||||
<string name="label_help">協助</string>
|
||||
<string name="label_feedback_message_enjoying">openScale 使用愉快嗎?</string>
|
||||
|
@@ -149,8 +149,7 @@
|
||||
<string name="label_not_found">not found</string>
|
||||
<string name="label_ignoreOutOfRange">Ignore out of range data</string>
|
||||
<string name="label_initial_weight">Initial weight</string>
|
||||
<string name="label_regression_line">Regression line</string>
|
||||
<string name="label_regression_line_degree">Regression polynomial degree</string>
|
||||
<string name="label_trend_line">Trend line</string>
|
||||
<string name="label_goal_line">Goal line</string>
|
||||
<string name="label_help">Help</string>
|
||||
<string name="label_feedback_message_enjoying">Enjoying openScale?</string>
|
||||
|
@@ -25,14 +25,9 @@
|
||||
android:summaryOn="@string/info_is_visible"
|
||||
android:title="@string/label_goal_line" />
|
||||
<CheckBoxPreference
|
||||
android:defaultValue="false"
|
||||
android:key="regressionLine"
|
||||
android:defaultValue="true"
|
||||
android:key="trendLine"
|
||||
android:summaryOff="@string/info_is_not_visible"
|
||||
android:summaryOn="@string/info_is_visible"
|
||||
android:title="@string/label_regression_line" />
|
||||
<EditTextPreference
|
||||
android:defaultValue="1"
|
||||
android:dependency="regressionLine"
|
||||
android:key="regressionLineOrder"
|
||||
android:title="@string/label_regression_line_degree" />
|
||||
android:title="@string/label_trend_line" />
|
||||
</PreferenceScreen>
|
||||
|
Reference in New Issue
Block a user