2つの配列のデータをグラフに描写したいと考えております。
現在、1つのデータしか描写できておりません。原因がわかりませんので、ご教授お願い致します。
import com.github.mikephil.charting.charts.LineChart; import com.github.mikephil.charting.components.AxisBase; import com.github.mikephil.charting.components.XAxis; import com.github.mikephil.charting.components.YAxis; import com.github.mikephil.charting.data.Entry; import com.github.mikephil.charting.data.LineData; import com.github.mikephil.charting.data.LineDataSet; import com.github.mikephil.charting.formatter.IAxisValueFormatter; import java.util.ArrayList; public class FourthActivity extends FirstActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fourth); } public void fftel(View view) { LineChart chart; Intent intent2 = getIntent(); float[] sample = intent2.getFloatArrayExtra("sample"); float[] test= intent2.getFloatArrayExtra("test"); chart = findViewById(R.id.fft_chart); ArrayList<Entry> entries1 = new ArrayList<>(); ArrayList<Entry> entries2 = new ArrayList<>(); int i; for (i = 0; i < sample; i++) { entries1.add(new Entry((float) (i), sample[i]));//このデータは描写できている entries2.add(new Entry((float) (i), test[i]));//これが描写できていない。。。。。 } LineDataSet dataSet1 = new LineDataSet(entries1, "sample values"); dataSet.setColor(ContextCompat.getColor(this, R.color.colorPrimary)); dataSet.setValueTextColor(ContextCompat.getColor(this, R.color.colorPrimaryDark)); dataSet.setDrawCircles(false); LineDataSet dataSet2ト = new LineDataSet(entries2, "test values"); dataSet1.setColor(ContextCompat.getColor(this, R.color.colorAccent)); dataSet2.setValueTextColor(ContextCompat.getColor(this, R.color.colorAccent)); XAxis xAxis = chart.getXAxis(); xAxis.setPosition(XAxis.XAxisPosition.BOTTOM); final String[] x = new String[sample.length]; for (i = 0; i < sample.length; i++) { x[i] = String.valueOf(i ); } IAxisValueFormatter formatter = new IAxisValueFormatter() { @Override public String getFormattedValue(float value, AxisBase axis) { return months[(int) value]; } }; xAxis.setGranularity(1f); // minimum axis-step (interval) is 1 xAxis.setValueFormatter(formatter); YAxis yAxisRight = chart.getAxisRight(); yAxisRight.setEnabled(false); YAxis yAxisLeft = chart.getAxisLeft(); yAxisLeft.setGranularity(1f); LineData data1 = new LineData(dataSet1); chart.setData(data1); LineData data2 = new LineData(dataSet2); chart.setData(data2); chart.invalidate(); }
描写できていないデータ(test)に関しては、ログ出力により、データが入っていることを確認済みです。
以上、宜しくお願い致します。
あなたの回答
tips
プレビュー