Нужна граненая визуализация с пользовательскими позициями осей - PullRequest
0 голосов
/ 03 октября 2018

Необходима граненная визуализация для моего личного проекта.Искал варианты по сети, выяснил, что https://github.com/chartshq/muze подходит для моей цели.

Хотя я смог довольно рано начать использовать их документацию, я вскоре столкнулся с препятствием.Похоже, документация в процессе.

Вот уменьшенный образец того, чего я достиг к настоящему моменту https://jsfiddle.net/q8w47vt1/

Promise.all([
fetch('https://raw.githubusercontent.com/chartshq/muze/master/examples/data/cars.json'),
  fetch('https://raw.githubusercontent.com/chartshq/muze/master/examples/data/cars-schema.json')]).then((response) => {
    Promise.all(response.map(_ => _.json())).then((res) => {
        const data = res[0]
        const schema = res[1];

        let DataModel = muze.DataModel;
        let rootData = new DataModel(data, schema);
        let env = muze(); 
        let canvas = env.canvas();

        canvas
            .rows(['Origin', 'Acceleration']) 
            .columns(['Cylinders']) 
            .data(rootData)
            .width(500)
            .height(500)
            .title('Acceleration by Cylinders by Origin')
            .subtitle('For years 1970 - 1982')
            .mount('#chart-container');
    });
});

Но я хотел, чтобы моя визуализация имела ось справа и фасет слева от графика, а не слева.Я попробовал несколько способов сделать это, но не смог достичь результата.

Потратил некоторое время на просмотр кода, но не смог много разобраться, так как у меня не было времени пройти через кодовую базу.

Может кто-нибудь помочь мне в этом?Не хочу поднимать вопрос прямо сейчас, так как я не уверен, что это допустимая функция или нет!

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

Хотя указанная выше конфигурация будет служить вашей цели, чтобы ось находилась справа, она также сместит грань вправо.Вы можете выбрать, чтобы ваши фасеты находились с левой стороны холста, сохраняя при этом оси вправо, предоставив конфигурацию, указанную ниже :

canvas.rows([['Origin'],['Acceleration']])

По сути, первый массив для rows API предоставляет левую часть визуализации, а второй массив - правую.Если предоставляется только один массив, Muze автоматически помещает все грани и оси в левую часть визуализации.

Однако в некоторых случаях это может быть недопустимо (особенно, если вы предоставили толькоразмеры к API).

Итак, вы можете ознакомиться с документацией, чтобы понять, как работает этот API, для лучшего понимания здесь

0 голосов
/ 03 октября 2018

Добро пожаловать в stackoverflow :)

Изменение положения оси может быть сделано как ниже

 canvas.rows([[], ['Origin', 'Acceleration']]) 

Вы можете найти документацию здесь

...