Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

प्राइमफेसेस 5.0 चार्ट - पूरी तरह से डेटाबेस मानों से चार्ट मॉडल और श्रृंखला को गतिशील रूप से कैसे बनाएं

कुछ शोध के बाद उत्तर प्रत्येक प्रकार के चार्ट के लिए अलग-अलग मॉडल का उपयोग करना प्रतीत होता है जिसे आप बनाना चाहते हैं। नीचे दिए गए उदाहरण में मैं बरचार्ट और लाइनचार्ट के लिए मॉडल बना रहा हूं, जिसे पीएफ द्वारा समर्थित किसी अन्य चार्ट प्रकार का उपयोग करने के लिए बढ़ाया जा सकता है। ईएल में मैं सूची सरणियों (यानी [0]) को बुला रहा हूं, लेकिन यह आवश्यक नहीं है और यह सिर्फ मेरी प्राथमिकता थी। इसके अलावा मैंने पीएफ BarChartModel वर्ग (ExtendedBarChartModel) को बढ़ाया, लेकिन यदि आप मानक BarChartModel का उपयोग करते हैं तो उदाहरण ठीक काम करता है।

आशा है कि यह मदद करता है और किसी भी प्रतिक्रिया का स्वागत है:

<p:dataGrid id="modellist" value="#{chartTestBean.xbarmod[0]}" var="barmd">
<p:chart id="gridchart" type="bar" model="#{barmd}" style="width: 150px; height: 150px"/>
</p:dataGrid>

<p:dataGrid id="linegrid" value="#{chartTestBean.linemodelList[0]}" var="linemod">
<p:chart id="linechart" type="line" model="#{linemod}" style="width: 150px; height: 150px"/> 
</p:dataGrid>
.... Other chart models as needed here

बार चार्ट मॉडल के लिए बीन विधियाँ:

public List<ExtendedBarModel> ModelList() {
    xbarmod = new ArrayList();
    sers = new ArrayList();

    //chartType = "bar";
    orig = guestChartFacade.findAll();

    for (Enguestjoinchart j : orig) {
        if (j.getCharttype().equals("bar")) {
            setChartType("bar");
            showBar = true;
            idmid = j.getIdmid();
            selJoin = guestChartFacade.find(idmid);
            startDate = selJoin.getStartdate();
            sers.add(idmid);
        }
    }

    dsetList = setfacade.findTopsRange(sers);

    processModelList();
    return xbarmod;
}


public ExtendedBarModel processModelList() {
    for (int i = 0; i < dsetList.size(); i++) {

        idmid = dsetList.get(i).getIdmid();

        pointList = pointFacade.pointRangeIdmid(idmid, startDate);
        xtestmodel = new ExtendedBarModel("Barmodel " + dsetList.get(i).getIdmid());

        chartSer = new ChartSeries();
        for (Endatapoint p : pointList) {
            chartSer.set(p.getRecords().getSeriesname(), p.getActualnum());

        }
        xtestmodel.addSeries(chartSer);
        xbarmod.add(xtestmodel);
    }

    for (ExtendedBarModel b : xbarmod) {
        xtestmodel = b;
        return xtestmodel;
    }
    return null;
}

लाइन चार्ट के लिए:

public List<LineChartModel> makelinelistModel() {
    linemodelList = new ArrayList();
    linesers = new ArrayList();

    orig = guestChartFacade.findAll();

    for (Enguestjoinchart w : orig) {
        if (w.getCharttype().equals("line")) {
            idmidLine = w.getIdmid();
            selJoinLine = guestChartFacade.find(idmidLine);

            startDateLine = guestChartFacade.findStart(idmidLine);

            endDateLine = guestChartFacade.findEnd(idmidLine);
            linesers.add(idmidLine);
            showLine = true;
        }
    }

    if (linesers.size()==0) {
        dsetlineList = null;
        linemodelList = null;

    } 
    else {
       dsetlineList = setfacade.findTopsRange(linesers);
        processLineModelList();
    }
    return linemodelList;

}

public LineChartModel processLineModelList() {
    for (int i = 0; i < dsetlineList.size(); i++) {

        idmidLine = dsetlineList.get(i).getIdmid();
        pointListLine = pointFacade.pointLineRange(idmidLine, startDateLine, endDateLine);
        linemodel = new LineChartModel();

        chartSerLine = new ChartSeries();
        Map<Object, Number> datMap = new HashMap();
        DateAxis axis = new DateAxis();

        for (Endatapoint p : pointListLine) {
            chartSerLine.set(p.getPointdate().toString(), p.getActualnum());
            linemodel.addSeries(chartSerLine);

        }

        linemodelList.add(linemodel);
        linemodel.getAxes().put(AxisType.X, axis);
    }

    for (LineChartModel m : linemodelList) {
        linemodel = m;
        return linemodel;
    }
    return linemodel;
}

.... Other chart models



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. अग्रणी शून्य का उपयोग करने के लिए mySQL MONTH () प्राप्त करें?

  2. पैरामीटर @Name संग्रह में नहीं मिला

  3. पायथन:मैं datetime.timedelta ऑब्जेक्ट से समय कैसे प्राप्त करूं?

  4. MySQL संग्रहीत कार्यविधि डिज़ाइन समस्या। पुनरावृत्ति या पदानुक्रम?

  5. MySQL - महीनों के बीच (टाइमस्टैम्प के बजाय)