npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@centrogeomx/sisdai-graficas

v6.1.2

Published

Biblioteca de gráficas de Vue y D3

Downloads

56

Readme

sisdai-graficas

El proyecto sisdai-graficas es una biblioteca de visualización de datos que forma parte del Sistema de Diseño y Accesibilidad para la Investigación (Sisdai). El Sisdai es un proyecto de investigación desarrollado por el Centro de Investigación en Ciencias de Información Geoespacial, A.C. (CentroGeo) y coordinado por el Consejo Nacional de Humanidades, Ciencias y Tecnologías (Conahcyt) del Gobierno de México.

Para leer la documentación de la biblioteca, puedes visitar el sitio sisdai-graficas.conahcyt.mx o levantar la documentación localmente siguiendo las instrucciones escritas en la sección Uso local del proyecto de este documento.

Cualquier persona puede hacer uso de esta biblioteca al clonarla e instalarla en su equipo a través del protocolo HTTPS o bien instalándola mediante npm.

Utilidades

  • Homologa los estilos utilizando el sistema de diseño Sisdai.
  • Mejora la accesibilidad mediante el uso de html semántico y aplicando las reglas establecidas en Sisdai.
  • Facilita la actualización de elementos institucionales requeridos.
  • Facilita y reduce el código de elementos para la visualización de datos.

Instalación y uso

Instala la biblioteca

En la carpeta principal de tu proyecto Vue puedes instalar la última versión de sisdai-graficas mediante dos opciones:

Opción A. Desde el repositorio del sisdai-graficas en npm.

En la línea de comando escribe

npm i @centrogeomx/sisdai-graficas

Opción B. Desde el repositorio de sisdai-graficas en código.conahcyt.mx.

En la línea de comando escribe

npm install git+https://codigo.conahcyt.mx/sisdai/sisdai-graficas

Importa la biblioteca

Para poder utilizar un componente de visualización de esta biblioteca, es necesario importar y registrarlo en el archivo src/main.js del proyecto (de Vue) a trabajar, por ejemplo en el siguiente script se está registrando e importando el componente de SisdaiBarras de esta biblioteca (que construye una gráfica de barras).

import Vue from 'Vue'
import App from './App.Vue'
import { SisdaiBarras } from 'sisdai-graficas'
import 'sisdai-graficas/dist/sisdai-graficas.css'

Vue.use(SisdaiBarras)

Uso

En cualquier vista en la sección <template> de tu proyecto puedes utilizar los componentes de la biblioteca sin necesidad de volver a importarlo en el script. Por ejemplo:

<template>

  <SisdaiBarras
      barras_id="..."
      :datos="[{...}]"
      :variables="[{...}]"
      nombre_color="..."
      nombre_barra="..."
      titulo_eje_x="..."
      titulo_eje_y="..."
  />

</template>

Para un uso avanzado revisa la documentación.

Actualización de la biblioteca

Si necesitas utilizar otra versión de las gráficas, ubícate en la carpeta del proyecto en donde necesitas la actualización e instala la versión que requieres nuevamente usando una de estas dos opciones

Opción A. Para versiones publicadas en el repositorio de sisdai-graficas en npm.

npm i @centrogeomx/[email protected]

Opción B. Para cualquier versión desde el repositorio de sisdai-graficas en código.conahcyt.mx.

npm install git+https://codigo.conahcyt.mx/sisdai/sisdai-graficas#vN.N.N

donde N.N.N indica el número de versión, por ejemplo v1.0.0

Consulta el archivo CHANGELOG.md del repositorio de sisdai-graficas en código.conahcyt.mx para conocer las nuevas características y cambios que sufre la biblioteca en cada una de sus versiones.

Listado de gráficas

| Gráfica | Descripcion | Propiedades requeridas | | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- | | SisdaiAlluvial | Componente para construir un gráfico de tipo alluvial | :datos="{objeto}" :variales="[{arreglo de objetos}]" | | SisdaiAreasApiladas | Componente para construir una gráfica de áreas apiladas en el tiempo | :datos="[{arreglo de objetos}]" :variales="[{arreglo de objetos}]" nombre_indice="texto" formato_temporal="texto" | | SisdaiAreasApiladasOrdenadas | Componente para construir una gráfica de áreas apiladas en el tiempo cuyas categorías se reordenan en cada fecha de forma ascendente | :datos="[{arreglo de objetos}]" :variales="[{arreglo de objetos}]" nombre_indice="texto" formato_temporal="texto" | | SisdaiBarras | Componente para crear gráficas de barras simples o apiladas | :datos="[{arreglo de objetos}]" :variables="[{arreglo de objetos}]" nombre_indice="texto" | | SisdaiCajasBigotes | Componente para construir un gráfico de cajas y bigotes, útil para visualizar distribuciones | :datos="[{arreglo de objetos}]" :variables="{objeto}" nombre_indice="texto" | | SisdaiDona | Componente para construir un gráfico de donas | :datos="[{arreglo de objetos}]" :variables="{objeto}" nombre_indice="texto" clave_cantidad="texto" | | SisdaiSeriesTiempo | Componente para construir un gráfico de series de tiempo | :datos="[{arreglo de objetos}]" :variables="{objeto}" nombre_indice="texto" formato_temporal="texto" | | SisdaiViolines | Componente para construir un diagrama de violines, útil para visualizar distribuciones | :datos="[{arreglo de objetos}]" :variables="{objeto}" nombre_indice="texto" |

Uso local del proyecto

Pasos previos recomendados

Para desarrollar este proyecto se usa node.js como entorno de ejecución de JavaScript. La opción recomendada para instalarlo es vía nvm que es el manejador de versiones de node. Siguiendo este camino, también se instalará el manejador de paquetes npm. Las instrucciones de instalación y dependencias del proyecto se muestran aquí usando tanto npm, como nvm.

Las gráficas de esta biblioteca están desarrolladas como componentes de Vue.js usando D3.js, por lo tanto se le recomienda a la persona usuaria tener conocimientos básicos de lo anterior así como de desarrollo en JavaScript.

Dependencias

Instalación

Se puede clonar e instalar este proyecto en tu equipo utilizando solo el protocolo HTTPS, es decir:

git clone https://codigo.conahcyt.mx/sisdai/sisdai-graficas.git

Establece la versión adecuada de npm y nvm (previamente instaladas).

nvm use 22

Instala las dependencias de la biblioteca.

npm install

Opcionalmente levanta en local la documentación.

npm run docs

Testing

Si deseas correr el testing puedes ejecutar el siguiente comando, el cual implementará la pruebas unitarias.

npm run test

Adicionalmente puedes ejecutar el siguiente comando para evaluar el porcentaje de código que se ha testeado y visualizar el avance en un servidor local

npm run coverage

Hasta la versión v6.0.1, las pruebas unitarias que se han implementado son en los siguientes componentes:

Las pruebas realizadas en SisdaiGraficas son:

  • Renderizado del componente
  • Manejo de props
  • Renderizado de slots
  • Interacciones del usuario (movimiento de cursor)
  • Comportamiento condicional con el globo de información
  • Cálculo correcto de dimensiones

Mientras que las pruebas realizadas en los componentes SisdaiAlluvial, SisdaiAreasApiladas, SisdaiAreasApiladasOrdenadas, SisdaiBarras, SisdaiCajasBigotes, SisdaiDonas, SisdaiSeriesTiempo y SisdaiViolines son:

  • Renderizado del componente
  • Manejo de props
  • Creación de elementos gráficos

Licencia

SOFTWARE LIBRE Y ESTÁNDARES ABIERTOS

Sisdai y sisdai-graficas están alineadas a las disposiciones establecidas por la Coordinación de Estrategia Digital Nacional ( DOF:06/09/2021) en donde se estipula que las "políticas y disposiciones tienen como objetivo fortalecer el uso del software libre y los estándares abiertos, fomentar el desarrollo de aplicaciones institucionales con utilidad pública, lograr la autonomía, soberanía e independencia tecnológicas dentro de la APF". En el artículo 63 se explicita que "cuando se trate de desarrollos basados en software libre, se respetarán las condiciones de su licenciamiento original [...]".

Considerando lo anterior, sisdai-graficas se publica bajo la licencia LGPLv3. Dicha licencia se puede consultar en el archivo LICENSE de este repositorio. Esta licencia se encuentra disponible en inglés porque aunque el Sisdai privilegia el idioma español se respeta la versión original de acuerdo al proyecto GNU.

Contribuir

Por el momento sólo quienes sean parte de un equipo de investigación del capítulo de un ENI podrán levantar issues en este repositorio. El equipo del Sisdai se encargará de mantenerlo.