2009-07-29 15 views
7

मैं कुछ सुंदर ग्राफ बना रहा हूं, और सीमा में व्हाइटस्पेस बहुत सारे पिक्सेल ले रहा है जो डेटा द्वारा बेहतर उपयोग किया जाएगा। ऐसा लगता है कि ग्राफ बढ़ने के साथ सीमा बढ़ती है।मैं matplotlib ग्राफ पर सीमा आकार को कैसे सीमित करूं?

यहाँ मेरी रेखांकन कोड की हिम्मत कर रहे हैं:

 import matplotlib 
     from pylab import figure 

     fig = figure() 
     ax = fig.add_subplot(111) 
     ax.plot_date((dates, dates), (highs, lows), '-', color='black') 
     ax.plot_date(dates, closes, '-', marker='_', color='black') 

     ax.set_title('Title') 
     ax.grid(True) 
     fig.set_figheight(96) 
     fig.set_figwidth(24) 

वहाँ सीमा के आकार को कम करने के लिए एक तरीका है? हो सकता है कि कहीं एक सेटिंग जो मुझे लगातार 2 इंच या तो सीमा पर रखने की अनुमति देगी?

उत्तर

6

अद्यतन दोषी चूंकि वह आपकी तरह लग रहा है के साथ SubplotParams एक सिंगल सबप्लॉट का उपयोग कर रहे हैं, आप add_subplot छोड़ना चाहते हैं और सीधे add_axes पर जा सकते हैं। यह आपको अक्षों के आकार (आकृति-सापेक्ष निर्देशांक में) देने की अनुमति देगा, ताकि आप इसे आंकड़े के भीतर जितना चाहें उतना बड़ा कर सकें। आपके मामले में, इसका मतलब यह होगा अपने कोड की तरह

import matplotlib.pyplot as plt 

    fig = plt.figure() 

    # add_axes takes [left, bottom, width, height] 
    border_width = 0.05 
    ax_size = [0+border_width, 0+border_width, 
       1-2*border_width, 1-2*border-width] 
    ax = fig.add_axes(ax_size) 
    ax.plot_date((dates, dates), (highs, lows), '-', color='black') 
    ax.plot_date(dates, closes, '-', marker='_', color='black') 

    ax.set_title('Title') 
    ax.grid(True) 
    fig.set_figheight(96) 
    fig.set_figwidth(24) 

यदि आप चाहते थे कुछ ऐसा दिखाई देगा, तुम भी मानकों set_figheight/set_figwidth सीधे figure() कॉल में डाल सकता है।

5

subplots_adjust एपीआई का प्रयास करें:

subplots_adjust (args *, ** kwargs)

fig.subplots_adjust (बाएं = कोई नहीं, नीचे = कोई नहीं, सही = कोई नहीं, wspace = कोई नहीं, hspace = कोई नहीं)

अद्यतन kwargs() आर सी के लिए जहां कोई नहीं और subplot स्थानों

+2

क्या आप इस मामले में इसका उपयोग कैसे करेंगे इसका उदाहरण नहीं दे सकते? –

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