2010-03-02 14 views
5

मैं जेएफरी चार्ट का उपयोग कर रहा हूं और उस श्रेणी के लिए रेंज अक्ष पर लेबल को बदलने के लिए सक्षम होना चाहता हूं, जो डोमेन में है। मैं केवल लेबल के रूप को अनुकूलित करने के लिए विकल्प देखता हूं और ओवरराइड करने का कोई तरीका नहीं टिक की स्थिति के आधार पर लेबल की सामग्री।मैं JFreeChart में संख्याएक्सिस पर टिकलेबल कैसे बदल सकता हूं?

क्या कोई जानता है कि टिकेलबेल के पाठ को ओवरराइड कैसे करें?

उत्तर

7

जेएफरी चार्ट BarChartDemo दिखाता है कि setStandardTickUnits() विधि का उपयोग कैसे करें। NumberAxis के लिए इसके लिए कई आसान स्थिर कारखानों हैं। डिफ़ॉल्ट को ओवरराइड करने के लिए, आप "TickUnits का अपना उदाहरण बना सकते हैं और फिर इसे setStandardTickUnits() विधि पर पास कर सकते हैं।"

अनुपूरक: ऊपर वर्णित डिफ़ॉल्ट बस java.text.Format के उप-वर्ग का उपयोग करें; आप TickUnit के लिए add() के लिए अपना खुद का आपूर्ति कर सकते हैं। यदि यह अपर्याप्त है, तो आप को TickUnit के अपने स्वयं के ठोस उप-वर्ग में ओवरराइड कर सकते हैं और आवश्यक TickUnits लिखने के लिए इसका उपयोग कर सकते हैं।

+0

जितना आसान था उतना आसान नहीं था, लेकिन यह बहुत अच्छा है! धन्यवाद। –

5

मुझे एक ही समस्या होने पर यह अभी मिला। मैंने इसे SymbolAxis का उपयोग करके हल किया। SymbolAxis को XYPlot में जोड़ा जा सकता है।

SymbolAxis sa = new SymbolAxis("AxisLabel", 
    new String[]{"Category1","Category2","Category3","..."}); 
chart.getPlot().setDomainAxis(sa); 
+0

भी [यूनिकोड] (http://www.unicode.org/charts/) के साथ अच्छी तरह से काम करता है। – trashgod

संबंधित मुद्दे