दिलचस्प पोस्ट
अभिव्यक्ति बनाम विवरण Laravel 5 में निष्पादित क्वेरी कैसे प्राप्त करें? डीबी :: getQueryLog खाली सरणी लौट रहा है एंड्रॉइड गैलरी से एकाधिक चित्र चुनें पायथन के साथ प्रधान संख्याओं को खोजने के लिए अंतरिक्ष-स्थान का सबसे तेज़ शब्द टॉमकेट का उपयोग कर एक PHP एप चलाएं? SQL सर्वर में काम करने के लिए आप वाइल्डकार्ड के पूर्ण-पाठ खोजों को कैसे प्राप्त कर सकते हैं? इंजेक्ट विधि की एक सरल व्याख्या की आवश्यकता है कैसे स्मृति leaks को रोकने के लिए node.js? मैं HTML <select> तत्व के लिए डिफ़ॉल्ट मान कैसे सेट कर सकता हूं? मुझे फ़ंक्शन हस्ताक्षर में std :: enable_if से क्यों बचने चाहिए? Symfony2 – खुद के विक्रेता बंडल का निर्माण – परियोजना और जीआईटी रणनीति एक्सेल VBA – खाली पंक्तियाँ हटाएं PHP ईमेल भेजने बीसीसी iOS8.1 सिम्युलेटर हमेशा जर्मन कीबोर्ड कीबोर्ड के बावजूद यूएस कीबोर्ड लेआउट का उपयोग करता है मैटलैब में सेल एरेज़ का उपयोग कैसे करें?

क्या Matplotlib का उपयोग करके अंतर्निहित समीकरणों को साजिश करना संभव है?

मैं मेटाप्ललिब में अंतर्निहित समीकरणों को छानना चाहूंगा (फार्म एफ (एक्स, वाई) = जी (एक्स, वाई) जैसे एक्स। ^ Y = y ^ x) क्या यह संभव है?

वेब के समाधान से एकत्रित समाधान "क्या Matplotlib का उपयोग करके अंतर्निहित समीकरणों को साजिश करना संभव है?"

मुझे विश्वास नहीं है कि इसके लिए बहुत अच्छा समर्थन है, लेकिन आप ऐसा कुछ करने की कोशिश कर सकते हैं

import matplotlib.pyplot from numpy import arange from numpy import meshgrid delta = 0.025 xrange = arange(-5.0, 20.0, delta) yrange = arange(-5.0, 20.0, delta) X, Y = meshgrid(xrange,yrange) # F is one side of the equation, G is the other F = Y**X G = X**Y matplotlib.pyplot.contour(X, Y, (F - G), [0]) matplotlib.pyplot.show() 

contour लिए एपीआई डॉक्स देखें: यदि चौथी तर्क एक अनुक्रम है तो यह निर्दिष्ट करता है कि किस साजिश को साजिश करने के लिए रेखाएं लेकिन यह साजिश केवल आपके श्रेणियों के संकल्प के रूप में उतना ही अच्छी होगी, और कुछ खास विशेषताएं हैं जो कभी भी सही नहीं होती हैं, अक्सर स्वयं प्रतिच्छेदन बिंदुओं पर होती हैं

चूंकि आपने इस सवाल को सिम्पी के साथ टैग किया है, मैं इस तरह के एक उदाहरण देगा।

प्रलेखन से: http://docs.sympy.org/modules/plotting.html

 from sympy import var, Plot var('x y') Plot(x*y**3 - y*x**3) 

matplotlib समीकरण साजिश नहीं करता; यह अंकों की श्रृंखलाओं को भूखंड बनाती है आप scipy​.optimize जैसे उपकरण का उपयोग कर सकते हैं। संख्यात्मक रूप से scipy​.optimize अंकों की एक्स मानों (या इसके विपरीत) से संख्यात्मक रूप से y अंकों की गणना करना या संख्यात्मक रूप से किसी भी अन्य उपकरण के उपयुक्त के रूप में उपयोग कर सकते हैं।


उदाहरण के लिए, यह एक ऐसा उदाहरण है, जहां मैं किसी विशिष्ट क्षेत्र में एक्सएक्साइड समीकरण x ** 2 + x * y + y ** 2 = 10 का प्लॉट करता हूं।

 from functools import partial import numpy import scipy.optimize import matplotlib.pyplot as pp def z(x, y): return x ** 2 + x * y + y ** 2 - 10 x_window = 0, 5 y_window = 0, 5 xs = [] ys = [] for x in numpy.linspace(*x_window, num=200): try: # A more efficient technique would use the last-found-y-value as a # starting point y = scipy.optimize.brentq(partial(z, x), *y_window) except ValueError: # Should we not be able to find a solution in this window. pass else: xs.append(x) ys.append(y) pp.plot(xs, ys) pp.xlim(*x_window) pp.ylim(*y_window) pp.show() 

सिम्पी के विकास संस्करण में एक अंतर्निहित समीकरण (और असमानता) का आलेख है। इसे जीएसओसी के एक भाग के रूप में बनाया गया है और यह भूखंडों को माप्प्लेटलिब आंकड़ा उदाहरण के रूप में तैयार करता है।

सिम्पी (0.7.2) के अगले संस्करण में यह उपलब्ध होगा:

 >>> from sympy.plotting import plot_implicit >>> p = plot_implicit(x < sin(x)) # also creates a window with the plot >>> the_matplotlib_axes_instance = p._backend._ax 

जब यह रिलीज़ हो जाए तो मैं इस पोस्ट को अपडेट करूँगा।

यदि आप matplotlib (लेकिन अभी भी अजगर) के अलावा किसी अन्य का उपयोग करने के लिए तैयार हैं, ऋषि है:

एक उदाहरण: http://sagenb.org/home/pub/1806

Implicit_plot के लिए दस्तावेज़ीकरण

बाबा होमपेज

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

चीयर्स, गैडेस

 import matplotlib.pyplot as plt from matplotlib.ticker import MultipleLocator, FormatStrFormatter import numpy as np fig = plt.figure(1) ax = fig.add_subplot(111) # set up axis ax.spines['left'].set_position('zero') ax.spines['right'].set_color('none') ax.spines['bottom'].set_position('zero') ax.spines['top'].set_color('none') ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') # setup x and y ranges and precision x = np.arange(-0.5,5.5,0.01) y = np.arange(-0.5,5.5,0.01) # draw a curve line, = ax.plot(x, x**2,zorder=100) # draw a contour X,Y=np.meshgrid(x,y) F=X**Y G=Y**X ax.contour(X,Y,(FG),[0],zorder=100) #set bounds ax.set_xbound(-1,7) ax.set_ybound(-1,7) #produce gridlines of different colors/widths ax.xaxis.set_minor_locator(MultipleLocator(0.2)) ax.yaxis.set_minor_locator(MultipleLocator(0.2)) ax.xaxis.grid(True,'minor',linestyle='-') ax.yaxis.grid(True,'minor',linestyle='-') minor_grid_lines = [tick.gridline for tick in ax.xaxis.get_minor_ticks()] for idx,loc in enumerate(ax.xaxis.get_minorticklocs()): if loc % 2.0 == 0: minor_grid_lines[idx].set_color('0.3') minor_grid_lines[idx].set_linewidth(2) elif loc % 1.0 == 0: minor_grid_lines[idx].set_c('0.5') minor_grid_lines[idx].set_linewidth(1) else: minor_grid_lines[idx].set_c('0.7') minor_grid_lines[idx].set_linewidth(1) minor_grid_lines = [tick.gridline for tick in ax.yaxis.get_minor_ticks()] for idx,loc in enumerate(ax.yaxis.get_minorticklocs()): if loc % 2.0 == 0: minor_grid_lines[idx].set_color('0.3') minor_grid_lines[idx].set_linewidth(2) elif loc % 1.0 == 0: minor_grid_lines[idx].set_c('0.5') minor_grid_lines[idx].set_linewidth(1) else: minor_grid_lines[idx].set_c('0.7') minor_grid_lines[idx].set_linewidth(1) plt.show()