GithubHelp home page GithubHelp logo

Comments (4)

StephenOTT avatar StephenOTT commented on May 2, 2024

current createDataTable JS function:

    var createDataTable = function(series, columnType) {
      var data = new google.visualization.DataTable();
      data.addColumn(columnType, "");

      var i, j, s, d, key, rows = [];
      for (i = 0; i < series.length; i++) {
        s = series[i];
        data.addColumn("number", s.name);

        for (j = 0; j < s.data.length; j++) {
          d = s.data[j];
          key = (columnType === "datetime") ? d[0].getTime() : d[0];
          if (!rows[key]) {
            rows[key] = new Array(series.length);
          }
          rows[key][i] = toFloat(d[1]);
        }
      }

      var rows2 = [];
      for (i in rows) {
        if (rows.hasOwnProperty(i)) {
          rows2.push([(columnType === "datetime") ? new Date(toFloat(i)) : i].concat(rows[i]));
        }
      }
      if (columnType === "datetime") {
        rows2.sort(sortByTime);
      }
      data.addRows(rows2);

      return data;
    };

from chartkick.

StephenOTT avatar StephenOTT commented on May 2, 2024

@ankane Looking more at the code, I am thinking the renderPieChart may be a good example to deal with multiple columns of data with little or no code changes to CreateDataTable?

from chartkick.

StephenOTT avatar StephenOTT commented on May 2, 2024

@ankane in the renderPieChart function:

 renderPieChart = function(element, series, opts) {
      waitForLoaded(function() {
        var chartOptions = {
          chartArea: {
            top: "10%",
            height: "80%"
          }
        };
        var options = merge(merge(defaultOptions, chartOptions), opts.library || {});

        var data = new google.visualization.DataTable();
        data.addColumn("string", "");
        data.addColumn("number", "Value");
        data.addRows(series);

        var chart = new google.visualization.PieChart(element);
        resize( function() {
          chart.draw(data, options);
        });
      });
    };

Can you explain why the options variable is different compared to the other render functions?
PieChart:

var options = merge(merge(defaultOptions, chartOptions), opts.library || {});

Linechart and other render functions:

var options = jsOptions(series, opts);

Same goes with the BarChart. The options are showing as:

        var chartOptions = {
          hAxis: {
            gridlines: {
              color: "#ccc"
            }
          }
        };

from chartkick.

StephenOTT avatar StephenOTT commented on May 2, 2024

Okay have the basic code working for timelines. Will continue code work on issue #39

from chartkick.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.