Code Monkey home page Code Monkey logo

chart-stackedbar's Introduction

Chart-stackedBar

Desenvolvimento de um gráfico stackedBar em css, html e javascript.

  • O gráfico ainda não está totalmente preparado para trabalhar de forma responsiva no eixo Y. Altura total é 250px.
  • Não necessita do jquery para funcionar.
  • É importante executar a função buildChart() ao fim da página, pois ela irá montar o gráfico somente após os elementos html já terem sido criados. Caso contrário retornará um erro.
  • A biblioteca JS pode ser carregada no header livremente.
  • O plugin contempla apenas gráficos no formato de barras empilhadas (stacked bar).
  • Foi projetado para trabalhar com porcentagens. Sendo assim você pode fornecer qualquer valor para o gráfico. O script fará os cálculos e trabalhará sempre com a porcentagem relativa à amostragem.

###Como executar o gráfico

  • Instancie um div vazio com nomenclatura de id à seu critério que receberá toda a estrutura do gráfico (lembrando que não podemos ter id's duplicados na aplicação html). Ex.: <div id="chart"></div>.
  • O gráfico será montado executando a função buildChart() fornecendo os dados necessários como parâmetro. Ex.:

buildChart(TotalData, elemento, dimensaoX, dimensaoY, labels, legends, colors);

Onde:

  • TotalData é um objeto com os dados de amostragem para o gráfico. Ex.:
var TotalData = {
	series	: ['Windows','Linux'],
	data	: [
		{
			label	: '2017',
			valor	: [50, 50]
		},
		{
			label	: '2018',
			valor	: [25, 75]
		}
	]
};

Onde em TotalData:

  • series são os tipos de dados na amostragem;
  • data recebe os dados, onde:
  • label é a legenda de barras que será mostrada logo abaixo de cada barra;
  • valor é um array com valores diretamente espectivos às series. No exemplo, sendo assim, temos:
  • 50 usuários de Windows e 50 de Linux no ano de 2017;
  • 25 usuários de Windows e 75 de Linux no ano de 2018;

De volta ao buildChart:

  • elemento é uma string contendo o id do div instanciado a receber a estrutura do gráfico;
  • dimensaoX é a largura do corpo do gráfico. O tamanho total depende das demais configurações;
  • dimensaoY é a altura do corpo do gráfico. A altura total é acrescida de 22px (leganda de barras) totalizando 250px;
  • labels [true/false] ativa ou inabilita labels nas colunas indicando o volume total em porcentagem;
  • legends [true/false] ativa ou inabilita legendas do lado direito do gráfico. Caso true, serão acrescidos 120px à largura total do gráfico;
  • colors é opcional. Você pode customizar sua própria paleta de cores (formato hexadecimal) passando por array. Caso não seja fornecido, o plugin utilizará suas cores prédefinidas. Ex.:
    • ['#ff0000', '#0000ff']. Isso criará o gráfico apenas nas cores vermelho e azul.

chart-stackedbar's People

Contributors

augustotpaiva avatar

Stargazers

 avatar

Watchers

Nox avatar  avatar

Forkers

nemonox

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.