Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java: Сети
Войти
Регистрация
Восстановить пароль
 
dodiq123
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 7
1

Graph(LineChart) and json

14.02.2018, 12:04. Просмотров 228. Ответов 4

в fetchDataHistory парсю данные с сайта потом данные нужно передать в lineChart. Для начала хочу просто изменить LineChart в классе fetchDataHistory в методе onPostExecute меняю lineChart путем добавления в него данных dataLine. Вроде должно все работать но почему то не работает ))

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
public class MainActivity extends AppCompatActivity {
public static LineChart lineChart;
 
    public static String dataParseGet = "";
    private static final String SAVE_AKTIVITY = "one other";
    public static ArrayList<String> as = new ArrayList<String>();
    public static TextView data, texterr;
    RadioButton myRadioButton;
    public ArrayList<SpinnerModel> CustomListViewValuesArr = new ArrayList<>();
    fetchDataHistory f = new fetchDataHistory();
    boolean b;
    CustomAdapter adapter;
    MainActivity activity = null;
    RequestQueue requestQueue;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        activity = this;
        setListData();
        // Connect by id
        Spinner SpinnerExample = (Spinner) findViewById(R.id.spinner);
        data = (TextView) findViewById(R.id.textt);
        texterr = (TextView) findViewById(R.id.texterr);
        final RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
        //forPieChar();
        
 
        // For adapter spinner
        Resources res = getResources();
        adapter = new CustomAdapter(activity, R.layout.spinner_rows, CustomListViewValuesArr, res);
        SpinnerExample.setAdapter(adapter);
        requestQueue = Volley.newRequestQueue(getApplicationContext());
 
        
        // get data with fetchDataHistory  and lineChart connect by id
        fetchDataHistory process1 = new fetchDataHistory();
        process1.execute();
        lineChart= (LineChart) findViewById(R.id.lineChar);
        lineChart.setDragEnabled(true);
        lineChart.setScaleEnabled(false);
        
        
     
 
 
        SpinnerExample.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                int rgs_id = radioGroup.getCheckedRadioButtonId();
                myRadioButton = (RadioButton) findViewById(rgs_id);
 
                String s = myRadioButton.getText().toString();
                if (s.equals("USD")) {
                    b = true;
                } else {
                    b = false;
                }
                fetchData process = new fetchData(b, position);
                process.execute();
 
 
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
 
            }
        });
    }
    public void setListData() {
        String coy[] = {"Bitcoin", "Ethereum", "Ripple", "Bitcoin Cash", "Cardano", "Litecoin", "NEM", "Stellar", "IOTA", "NEO", "EOS", "Dash", "Monero", "TRON", "Bitcoin Gold", "Ethereum Classic", "ICON", "Qtum", "Lisk", "RaiBlocks"};
        for (int i = 0; i < coy.length; i++) {
            final SpinnerModel sched = new SpinnerModel();
            sched.setCompanyName(coy[i]);
            ;
            sched.setImage("image" + i);
 
            CustomListViewValuesArr.add(sched);
        }
    }
 
    public  void forPieChar(){
        lineChart= (LineChart) findViewById(R.id.lineChar);
 
      lineChart.setDragEnabled(true);
      lineChart.setScaleEnabled(false);
      ArrayList<Entry> yValues = new ArrayList<>();
      yValues.add(new Entry(1, 73f));
        yValues.add(new Entry(2, 75f));
        LineDataSet set1 = new LineDataSet(yValues, "Data Set 1");
        set1.setFillAlpha(110);
        ArrayList<ILineDataSet> dataSets = new ArrayList<>();
        dataSets.add(set1);
        LineData data =new LineData(dataSets);
        lineChart.setData(data);
    }
}

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
public class fetchDataHistory extends AsyncTask<Void, Void,Void> {
  
 
 
 
   
    String data ="";
 
    String singleParsed = "";
    String dataParse = "";
    LineData dataLine;
    @Override
    protected Void doInBackground(Void... voids) {
        try {
 
//String d = condition.getNamecript();
            URL url = new URL("https://min-api.cryptocompare.com/data/histoday?fsym=ETH&tsym=RUB&limit=250&aggregate=3&e=CCCAGG");
            HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
            InputStream inputStream = httpURLConnection.getInputStream();
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
            String linetext = "";
            while (linetext!=null){
                linetext = bufferedReader.readLine();
                data = data + linetext;
            }
            int index1 = data.indexOf('[');
            int index3 = data.lastIndexOf(']'); //9
            String a1 = data.substring(index1--,++index3 );
            JSONArray JA  = new JSONArray(a1);
            for ( int i = index1; i <JA.length();i++){
 
                    JSONObject JO = (JSONObject) JA.get(i);
                    singleParsed = "" + JO.get("time") + "";
                    dataParse = dataParse + singleParsed;
 
 
 
 
            }
 
            ArrayList<Entry> yValues = new ArrayList<>();
            yValues.add(new Entry(1, 73f));
            yValues.add(new Entry(2, 75f));
            LineDataSet set1 = new LineDataSet(yValues, "Data Set 1");
            set1.setFillAlpha(110);
            ArrayList<ILineDataSet> dataSets = new ArrayList<>();
            dataSets.add(set1);
            dataLine =new LineData(dataSets);
 
 
 
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return null;
    }
 
    @Override
    protected void onPostExecute(Void aVoid) {
        super.onPostExecute(aVoid);
        MainActivity.lineChart.setData(dataLine);
    }
 
 }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2018, 12:04
Ответы с готовыми решениями:

LineChart подписать цвет
Добрый день, подскажите, как подписать цвет графика? Вот на скрине два цвета. По программе...

Не строится график LineChart
public class Main extends Application { private double X=-2; @FXML ...

Java, JSON и JSON Simple. Непонятка с созданием объекта JSON на сервере для отправки на фронт
Здравствуйте. Разрабатываю интернет-магазин на Java. Мне нужно на фронте получить список товаров из...

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object
Дополнительные сведения: Cannot deserialize the current JSON object (e.g. {&quot;name&quot;:&quot;value&quot;}) into...

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object
Всем привет! Помогите, плиз, разобраться с ошибкой: An unhandled exception of type...

4
xoraxax
1636 / 1487 / 452
Регистрация: 05.07.2013
Сообщений: 7,327
Завершенные тесты: 2
14.02.2018, 12:06 2
что значит "не работает"
0
dodiq123
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 7
14.02.2018, 12:09  [ТС] 3
onPostExecute не передает значения Linechart поэтому тот нечего не показывает.
0
Миниатюры
Graph(LineChart) and json  
Pablito
2836 / 2254 / 762
Регистрация: 12.05.2014
Сообщений: 7,890
Завершенные тесты: 1
14.02.2018, 12:28 4
где лог ошибки?
и не нужно говорить что его нет - он есть 100%
0
dodiq123
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 7
14.02.2018, 12:30  [ТС] 5
ошибки нету, я думаю я просто не правильно передаю через onPostExecute
0
14.02.2018, 12:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2018, 12:30

SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
Всем привет, пытаюсь произвести запрос к обработчику c помощью AJAX, выдает ошибку при парсинге...

Flask и SQLAlchemy и JSON. Не получается преобразовать результат запроса в json
У меня есть БД построенная из этих моделей с помощью миграций: # Class Class stores info...

Как распарсить данные из первого json-а и перекинуть их в другой json
Добрый день, столкнулся с такой задачей. Есть вот такой json Необходимо извлечь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru