Ben JasperReports için yepyeni ve yavaş yavaş temelleri ile yolumdan mücadele ediyorum. Ben bir pasta grafik DB-odaklı veri (datasource denilen) ile doldurmak istemiyorum bir durum var. Çalışma zamanında JasperFillManager'a aktarılan Java hashmap'ından pasta grafiğini doldurmak için gereken tüm bilgileri sağlamak istiyorum.JasperReport Pie Chart Örnek
Bu, pasta grafikteki dilimleri etiketlemek, renklerini ayarlamak ve ağırlık/değerlerini (dilimlerin boyutunu) tanımlamak için parametreler içerir. Yani, benim Java kodunda bir noktada, şöyle şey yazıyor olacağını:
HashMap<String,Object> jrParams = new HashMap<String,Object>();
jpParams.put("slice_1_label", "Red Team");
jpParams.put("slice_1_color", Color.RED);
jpParams.put("slice_1_value", 67.0);
jpParams.put("slice_2_label", "Blue Team");
jpParams.put("slice_2_color", Color.BLUE);
jpParams.put("slice_2_value", 33.0);
// ... some other code
JasperFillManager.fillReport(jasperDesign, jrParams);
Ben 2 dilim bir pasta grafiği var olacaktır Burada elde etmek çalışıyorum gol; Kırmızı "Kırmızı Takım" dilim turtanın% 67'sini alır ve mavi "Mavi Takım" dilim% 33 oranında artar.
Şimdi hasasp ile JRXML/JasperDesign arasında "noktaların birleştirilmesi" konusunda yardıma ihtiyacım var.
birisi bana göster (ya da sadece bana yol yardım) Ben çalışma zamanı parametreleri ile pasta grafiği doldurmak HashMap benim jrParam
sahip olmak için yazmak gerekir <pieChart>
JRXML ne tür doğru Can ya? Aşağıda en iyi denemeyi yaptım, ama sadece tümüyle anlam kazanmaya çalışıyorum.
<pieChart>
<chart isShowLegend="true">
<reportElement x="10" y="10" width="300" height="300"/>
<chartTitle>
<titleExpression><![CDATA[My First JR Pie Chart]]></titleExpression>
</chartTitle>
</chart>
<pieDataset>
<!-- Here is where I believe I need to put my two slices; not sure how -->
</pieDataset>
<piePlot>
<plot backcolor="#8BA870"/>
<itemLabel color="#000000"/>
</piePlot>
</pieChart>
Herhangi bir yardım/açıklama için şimdiden teşekkür ederiz!
Mechkov cevabınız için teşekkür ederiz. Evet, iReports'u (ve onun Charts örneğini) kullanıyorum. Bu, JRXML'nin çoğunu sorularımdan aldım. Çoğu durumda, rapor verilerimi bir JRDataSource ile doldurmak istiyorum ve bu durumda bir JRBeanDataSource olduğunu kabul ediyorum. Bununla birlikte, sadece saf bir parametreler parametresi kullanıp kullanamayacağını merak ediyorum ve eğer öyleyse, JRXML'nin neye benzeyeceğini merak ediyorum. Cevabınız için tekrar teşekkürler! – IAmYourFaja
Alternatif olarak, JRXML'yi bir JRBeanArrayDataSource ile çalışacak şekilde yazmayı sağlamak için düzenleyebiliyorsanız, cevabınızı kabul ediyorum. Dize etiketi, Renk rengi ve Tek 3 değeri olan bir PieSlice çekirdeğimin yanı sıra her biri için standart alıcılar/ayarlayıcılar olduğunu varsayalım. Daha sonra JasperFillManager'ı doldurma sırasında bu PieSlices'ın bir dizisini (orijinal sorudaki 2 kesime karşılık gelen boyut = 2 ile) geçiriyorum. JRXML'nin şimdi nasıl görünmesi gerekiyor? – IAmYourFaja
@Zharvey Bütün kodu yazacaktım, ama bu büyük açıklama üzerine tökezledim ... Şunu kontrol et ... Ah, ve umarım size bir Harita veya Liste veri kaynağı ile nasıl yapılacağı hakkında bir fikir verir. .Eğer başka sorunuz varsa bana haber verin. Saygılarımızla! http://gilbertadjin.wordpress.com/2009/08/09/charting-with-jasper-reports/ – Mechkov