2016-04-22 4 views
0

Ich möchte den Dateip in Primefaces 5.2 Diagramme anpassen. Es bedeutet also, dass ich das DatatipFormat und den Inhalt darauf ändern möchte.Primefaces 5.2: Anpassen von Diagrammen datatip

Es versucht, dies:

--- --- XHTML

<p:chart type="line" 
     model="#{lineChartController.lineModel}" 
     title="#{lineChartController.lineModel.title}" 
     showDatatip="#{lineChartController.lineModel.showDatatip}" 
     datatipFormat="#{lineChartController.datatipFormat}" 
     ... /> 

--- --- Java

public String getDatatipFormat() 
{ 
    return "<span style=\"display:none;\">%s</span><span>%s</span>"; 
} 

isShowDatatip() gibt true zurück.

Das angepasste DatatipFormat scheint nicht zu funktionieren, außerdem weiß ich nicht, wie ich die Daten, die ich möchte, auf die% s setzen kann.

Zur Fortsetzung:

Dank

Antwort

0

Ich fand die Lösung.

Here, es führt mich in die falsche Richtung.

Ich lege meinen Java-Code auf den LineChartController und meine ShowDatatip führt zu einem LineChartModel ..., das eine setDatatipFormat (String) -Methode enthält. So

Ich benutze es:

LineChartModel lineModel = new LineChartModel(); 
... 
lineModel.setDatatipFormat("<table><thead><tr><th>Date</th></tr></thead><tbody><td>%s</td><td>%s EUR</td></tbody></table>"); 

Und ich weiß noch nicht, wie die Daten, die ich in dem% s setzen will.

0

Sie <p:overlayPanel> für dieses

<p:overlayPanel id="myPanel" for="myLbl" showEvent="mouseover" hideEvent="mouseout"> 
      <p:panelGrid columns="2"> 
       <f:facet name="header">#{controller. getDate()}</f:facet>     
       <h:outputLabel value="#{controller.dataItem.Col1}" />    
       <h:outputLabel value="#{controller.dataItem.Col2}" />  

      </p:panelGrid> 
    </p:overlayPanel> 
verwenden können

und binden Sie diese Überlagerung Onn Mousehover des gewünschten Punkts in Ihrem Diagramm alrernatively können Sie Overlay von Javascript aufrufen sowie das mousehover Ereignis des Diagramms fangen.

+0

Ich habe versucht, Ihren Code, es ist schön, aber, wissen Sie, wie Informationen aus dem Diagramm (x-und y-Koordinaten zum Beispiel) abrufen? Weil sonst die Daten statisch sind. – Quanta