का उपयोग कर अंक के सेट का केंद्र कैसे प्राप्त करें I अंक के एक सेट द्वारा बनाई गई आकृति का केंद्र बिंदु (x, y) प्राप्त करना चाहते हैं।पायथन
मैं यह कैसे कर सकता हूं?
का उपयोग कर अंक के सेट का केंद्र कैसे प्राप्त करें I अंक के एक सेट द्वारा बनाई गई आकृति का केंद्र बिंदु (x, y) प्राप्त करना चाहते हैं।पायथन
मैं यह कैसे कर सकता हूं?
यदि आप सेंट्रॉइड का मतलब है, तो आप बस सभी बिंदुओं का औसत प्राप्त करें।
x = [p[0] for p in points]
y = [p[1] for p in points]
centroid = (sum(x)/len(points), sum(y)/len(points))
लेकिन पाइथन 2.x में पूर्णांक विभाजन से सावधान रहें: यदि प्रत्येक बिंदु में एक पूर्णांक x मान होता है, तो आपके सेंट्रॉइड का एक्स मान पूर्णांक तक गोल हो जाएगा। '__future__ आयात प्रभाग से 'का उपयोग करें, स्पष्ट रूप से विभाजन से पहले एक फ्लोट में कनवर्ट करें, या पायथन 3. –
का उपयोग करें यदि' पॉइंट' एक द्वि-आयामी नम्पी सरणी है, तो आप शायद 'points.mean (0)' का उपयोग कर सकते हैं। – Philipp
धन्यवाद यह वही है जो मैं चाहता था। –
मुझे लगता है कि एक बिंदु एक tuple (x, y) है।
x,y=zip(*points)
center=(max(x)+min(x))/2., (max(y)+min(y))/2.
में अधिकतम + मिनट नहीं होना चाहिए, अधिकतम - न्यूनतम नहीं? –
@ थॉमस के: आप बिल्कुल सही हैं। – Kabie
यह समझने की कोशिश कर रहा है कि यह क्या कर रहा है ... हम न्यूनतम को न्यूनतम क्यों जोड़ते हैं? @colin का उत्तर मुझे समझ में आता है, लेकिन यह सुनिश्चित नहीं था कि यह भी क्यों काम करता है। – Futile32
"केंद्र" परिभाषित करें। ग्रैविटी केंद्र? केन्द्रक? कुछ और? –
यह गणित से संबंधित प्रश्न की तरह है। मुझे लगता है कि इस उत्कृष्ट पुस्तक में: http://www.openbookproject.net/thinkcs/ मुझे याद नहीं है कि पाइथन या सी ++ में, आप जो हासिल करने की कोशिश कर रहे हैं उसके कुछ उदाहरण हैं। – mRt