use of org.dussan.vaadin.dcharts.data.DataSeries in project cia by Hack23.
the class OrgDocumentChartDataManagerImpl method addDocumentHistoryByOrgData.
/**
* Adds the document history by org data.
*
* @param dataSeries
* the data series
* @param series
* the series
* @param itemList
* the item list
*/
private static void addDocumentHistoryByOrgData(final DataSeries dataSeries, final Series series, final List<ViewRiksdagenOrgDocumentDailySummary> itemList) {
final Map<String, List<ViewRiksdagenOrgDocumentDailySummary>> map = itemList.parallelStream().filter(Objects::nonNull).collect(Collectors.groupingBy(t -> StringUtils.defaultIfBlank(t.getDocumentType(), NO_INFO)));
final SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DD_MMM_YYYY, Locale.ENGLISH);
final SimpleDateFormat parseIncomingDateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);
for (final Entry<String, List<ViewRiksdagenOrgDocumentDailySummary>> entry : map.entrySet()) {
addNewDataSerie(dataSeries, series, simpleDateFormat, parseIncomingDateFormat, entry);
}
}
use of org.dussan.vaadin.dcharts.data.DataSeries in project cia by Hack23.
the class PartyChartDataManagerImpl method createPartyWinnerChart.
@Override
public void createPartyWinnerChart(final AbstractOrderedLayout content) {
final Map<String, List<ViewRiksdagenVoteDataBallotPartySummaryDaily>> map = getPartyMap();
final DataSeries dataSeries = new DataSeries();
final SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DD_MMM_YYYY, Locale.ENGLISH);
final Series series = new Series();
for (final Entry<String, List<ViewRiksdagenVoteDataBallotPartySummaryDaily>> entry : map.entrySet()) {
series.addSeries(new XYseries().setLabel(getPartyName(entry.getKey())));
dataSeries.newSeries();
final List<ViewRiksdagenVoteDataBallotPartySummaryDaily> list = entry.getValue();
for (final ViewRiksdagenVoteDataBallotPartySummaryDaily viewRiksdagenVoteDataBallotPartySummaryDaily : list) {
if (viewRiksdagenVoteDataBallotPartySummaryDaily != null) {
dataSeries.add(simpleDateFormat.format(viewRiksdagenVoteDataBallotPartySummaryDaily.getEmbeddedId().getVoteDate()), viewRiksdagenVoteDataBallotPartySummaryDaily.getPartyWonPercentage());
}
}
}
series.addSeries(new XYseries().setLabel(NUMBER_BALLOTS));
dataSeries.newSeries();
final List<ViewRiksdagenVoteDataBallotPartySummaryDaily> list = getMaxSizeViewRiksdagenVoteDataBallotPartySummaryDaily();
for (final ViewRiksdagenVoteDataBallotPartySummaryDaily viewRiksdagenVoteDataBallotPartySummaryDaily : list) {
if (viewRiksdagenVoteDataBallotPartySummaryDaily != null) {
dataSeries.add(simpleDateFormat.format(viewRiksdagenVoteDataBallotPartySummaryDaily.getEmbeddedId().getVoteDate()), viewRiksdagenVoteDataBallotPartySummaryDaily.getNumberBallots());
}
}
addChart(content, "Party winner by daily ballot average", new DCharts().setDataSeries(dataSeries).setOptions(getChartOptions().createOptionsXYDateFloatLegendInsideOneColumn(series)).show(), true);
}
use of org.dussan.vaadin.dcharts.data.DataSeries in project cia by Hack23.
the class PersonDocumentChartDataManagerImpl method createPersonDocumentHistoryChart.
@Override
public void createPersonDocumentHistoryChart(final AbstractOrderedLayout content, final String personId) {
final SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DD_MMM_YYYY, Locale.ENGLISH);
final DataSeries dataSeries = new DataSeries();
final Series series = new Series();
final Map<String, List<ViewRiksdagenPoliticianDocumentDailySummary>> allMap = getViewRiksdagenPoliticianDocumentDailySummaryMap();
final List<ViewRiksdagenPoliticianDocumentDailySummary> itemList = allMap.get(personId.toUpperCase(Locale.ENGLISH).replace(UNDER_SCORE, EMPTY_STRING).trim());
if (itemList != null) {
final Map<String, List<ViewRiksdagenPoliticianDocumentDailySummary>> map = itemList.parallelStream().filter(Objects::nonNull).collect(Collectors.groupingBy(t -> StringUtils.defaultIfBlank(t.getEmbeddedId().getDocumentType(), NO_INFO)));
addDocumentHistoryByPersonData(simpleDateFormat, dataSeries, series, map);
}
addChart(content, DOCUMENT_HISTORY, new DCharts().setDataSeries(dataSeries).setOptions(getChartOptions().createOptionsXYDateFloatLegendInsideOneColumn(series)).show(), true);
}
use of org.dussan.vaadin.dcharts.data.DataSeries in project cia by Hack23.
the class WorldIndicatorChartDataManagerImpl method createIndicatorChart.
@Override
public void createIndicatorChart(final AbstractOrderedLayout content, final List<WorldBankData> list, final ViewWorldbankIndicatorDataCountrySummary summary) {
final Map<Country, List<WorldBankData>> countryIndicatorsMap = list.stream().collect(Collectors.groupingBy(WorldBankData::getCountry, Collectors.toList()));
final Series series = new Series();
final DataSeries dataSeries = new DataSeries();
for (final Entry<Country, List<WorldBankData>> entry : countryIndicatorsMap.entrySet()) {
series.addSeries(new XYseries().setLabel(entry.getKey().getValue()));
dataSeries.newSeries();
for (final WorldBankData item : entry.getValue()) {
if (item != null && item.getYearDate() != null && item.getDataValue() != null && !item.getDataValue().isEmpty()) {
dataSeries.add(item.getYearDate() + "-01-01", Float.valueOf(item.getDataValue()));
}
}
}
addChart(content, summary.getIndicatorName(), new DCharts().setDataSeries(dataSeries).setOptions(getChartOptions().createOptionsCountryLineChart(series)).show(), false);
}
use of org.dussan.vaadin.dcharts.data.DataSeries in project cia by Hack23.
the class CommitteeDataSeriesFactoryImpl method createCommitteeChartTimeSeriesAll.
@Override
public DataSeries createCommitteeChartTimeSeriesAll() {
DataSeries dataSeries = new DataSeries();
final DataContainer<ViewRiksdagenCommittee, String> dataContainer = applicationManager.getDataContainer(ViewRiksdagenCommittee.class);
for (final ViewRiksdagenCommittee data : dataContainer.getAll()) {
dataSeries = dataSeries.newSeries().add(data.getEmbeddedId().getDetail(), data.getTotalAssignments());
}
return dataSeries;
}
Aggregations