Хорошая библиотека черчения для C? [закрыто]

Java 8 один оператор

С учетом URL-адреса для анализа:

URL url = new URL("https://google.com.ua/oauth/authorize?client_id=SS&response_type=code&scope=N_FULL&access_type=offline&redirect_uri=http://localhost/Callback");

Это решение собирает список пар:

List<AbstractMap.SimpleEntry<String, String>> list = 
        Pattern.compile("&").splitAsStream(url.getQuery())
        .map(s -> Arrays.copyOf(s.split("="), 2))
        .map(o -> new AbstractMap.SimpleEntry<String, String>(decode(o[0]), decode(o[1])))
        .collect(toList());

Это решение с другой стороны, собирает карту (учитывая, что в URL-адресе может быть больше параметров с одним и тем же именем, но с разными значениями).

Map<String, List<String>> list = 
        Pattern.compile("&").splitAsStream(url.getQuery())
        .map(s -> Arrays.copyOf(s.split("="), 2))
        .collect(groupingBy(s -> decode(s[0]), mapping(s -> decode(s[1]), toList())));

Оба решения должны использовать служебную функцию для правильного декодирования параметров.

private static String decode(final String encoded) {
    try {
        return encoded == null ? null : URLDecoder.decode(encoded, "UTF-8");
    } catch(final UnsupportedEncodingException e) {
        throw new RuntimeException("Impossible: UTF-8 is a required encoding", e);
    }
}
30
задан Community 23 May 2017 в 12:10
поделиться

5 ответов

Думаю, вы на правильном пути с gnuplot. Для ваших нужд он очень мощный и гибкий.

Однако вы можете рассмотреть возможность записи в gnuplot непосредственно из вашего приложения, вместо того, чтобы создавать данные и загружать их. Доступен ANSI C API для gnuplot .

18
ответ дан 27 November 2019 в 22:44
поделиться

libgd . Но если у вас не так много данных для построения графика, gnuplot - хороший вариант, как предлагали другие.

3
ответ дан 27 November 2019 в 22:44
поделиться

В Mac OS X вы также можете передавать свои данные непосредственно в Plot, который поддерживает сценарии на основе Perl и интерфейс командной строки для неинтерактивная обработка данных:

1
ответ дан 27 November 2019 в 22:44
поделиться

вы смотрели AntiGrain? это мультиплатформенный

0
ответ дан 27 November 2019 в 22:44
поделиться

Я нашел PLplot , который кажется интересным. Я пробую прямо сейчас, и я опубликую здесь краткий обзор об этом, так как я буду знать о нем больше.

Обновление: На первый взгляд кажется, что он плохо спроектирован, поскольку добавляет интерактивности приложению (IMHO, библиотека никогда не должна напрямую взаимодействовать с пользователем, если это не является целью библиотеки).

2
ответ дан 27 November 2019 в 22:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: