{"id":23701170,"url":"https://github.com/gitfrandu4/kata3","last_synced_at":"2026-01-29T10:30:16.180Z","repository":{"id":211625171,"uuid":"233290834","full_name":"gitfrandu4/Kata3","owner":"gitfrandu4","description":"Representación gráfica de un histograma utilizando la librería JFreeChart","archived":false,"fork":false,"pushed_at":"2020-01-11T21:45:38.000Z","size":1858,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-30T09:32:45.204Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gitfrandu4.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-01-11T20:11:24.000Z","updated_at":"2020-01-11T21:45:40.000Z","dependencies_parsed_at":"2023-12-09T19:52:44.383Z","dependency_job_id":null,"html_url":"https://github.com/gitfrandu4/Kata3","commit_stats":null,"previous_names":["gitfrandu4/kata3"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitfrandu4%2FKata3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitfrandu4%2FKata3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitfrandu4%2FKata3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitfrandu4%2FKata3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gitfrandu4","download_url":"https://codeload.github.com/gitfrandu4/Kata3/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239776639,"owners_count":19695146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-30T09:32:27.564Z","updated_at":"2026-01-29T10:30:16.134Z","avatar_url":"https://github.com/gitfrandu4.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kata3\r\n## Representación gráfica de un Histograma\r\n\r\n**Objetivos**\r\n* Dado un conjunto de emails calcular el histograma de los dominios y visualizarlo. \r\n\r\nUtilizaremos la librería **JFreeChart** para el histograma. \r\n\r\n### Introducción\r\n\r\n`JFreeChart` es una biblioteca de código abierto disponible para Java que permite a los usuarios generar fácilmente gráficos. \r\n\r\nLos tipos de gráficos que se pueden crear con `JfreeChart`son varios: XY, diagramas de barras, diagramas de tarta, diagramas de series temporales, etc. \r\n\r\n* Para definir un conjunto de datos y crear con ellos un diagrama de barras hay que usar un objeto de la clase: `DefaultCategoryDataset`.\r\n* Los valores pueden ser añadidos al conjunto de datos usando el método:\r\n  * `addValue(double value, Comparable rowKey, Comparable columnKey)`\r\n* Para generar un Diagrama de Barras de la clase `JFreeChart`se usa el método: \r\n  * `ChartFactory.createBarChart()`\r\n\r\nEn nuestra aplicación, Kata3, el orden seguido es:\r\n\r\n1. Hacer visible una **ventana** (`Frame`)\r\n2. Insertar un **Panel** de tipo **ChartPanel**\r\n3. Insertar en el **Panel** un **Chart** de tipo **JFreeChart**\r\n4. Crear un **Dataset** de tipo **DefaultCategoryDataset**\r\n\r\n\u003cimg src=\"https://github.com/gitfrandu4/Kata3/blob/master/imgs/ejemplo_kata3.png\" alt=\"ejemplo_kata3\" style=\"zoom:75%;\" /\u003e\r\n\r\n### Kata3 versión 1\r\n\r\n\u003cimg src=\"https://github.com/gitfrandu4/Kata3/blob/master/imgs/Kata3_v1.png\" alt=\"Kata3_v1\" style=\"zoom:75%;\" /\u003e\r\n\r\nDe forma general, el esquema a seguir es el siguiente:\r\n\r\n```\r\n// 1 CLASE HistogramDisplay =\u003e se extiende ApplicationFrame\r\n\t// 2 Constructor de HistogramDisplay  se invoca al constructor\r\n\t\tde la superclase y se establece un contenedor de tipo chartPanel.\r\n\t// 3 método execute() =\u003e se hace visible el frame.\r\n\t// 4 método JPanel() =\u003e se inserta un panel.\r\n\t// 5 método createChart() =\u003e se crea un Diagrama de Barras.\r\n\t// 6 método createDataSet() =\u003e se crea el conjunto de datos.\r\n\r\n// 7, 8 CLASE KATA3 =\u003e se instancia un objeto HistogramDisplay y sobre\r\n\teste objeto se invoca al método execute()\r\n```\r\n\r\n\r\n\r\n### Kata3 versión 2\r\n\r\n\u003cimg src=\"https://github.com/gitfrandu4/Kata3/blob/master/imgs/Kata3_v2.png\" alt=\"Kata3_v1\" style=\"zoom:75%;\" /\u003e\r\n\r\nDe forma general, el esquema a seguir es el siguiente:\r\n\r\n```\r\n// 1 CLASE Histogram\r\n\t// 2 Se define un mapa de clave genérica y valores enteros.\r\n\t// 3 método get() =\u003e para el mapa, se devuelve el valor correspondiente \r\n\t\ta una clave.\r\n\t// 4 método keySet() =\u003e devuelve el conjunto de claves del mapa.\r\n\t// 5 método increment() =\u003e se rellena el mapa.\r\n\r\n// 6 CLASE HistogramDisplay\r\n\t// se crea una variable global de tipo Histogram\r\n\t// 7, 8 se modifica constructor =\u003e se pasa como parámetro un objeto \r\n\t\tHistogram y dentro del constructor se hace referencia a este objeto.\r\n\t// 9 método dataSet() =\u003e se reemplazan todos los métodos addValue por \r\n\t\tuno solo dentro un bucle\r\n\r\n// 10, 11, 12 CLASE Kata3 =\u003e se instancia un objeto Histogram y sobre este\r\n\tobjeto se llama al método increment(). Se invoca al método execute()\r\n\r\n```\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitfrandu4%2Fkata3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgitfrandu4%2Fkata3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitfrandu4%2Fkata3/lists"}