খাঁটি পাইথন বাস্তবায়ন
নীচে কাঙ্ক্ষিত কার্যকারিতাটির বিশুদ্ধ অজগর বাস্তবায়ন যা কোনও সংখ্যক সিরিজকে ইতিবাচক, নেতিবাচক বা মিশ্র মান সহ পরিচালনা করে এবং ব্যবহারকারীকে পছন্দসই পদক্ষেপের আকার নির্দিষ্ট করতে দেয়:
import math
def computeTicks (x, step = 5):
"""
Computes domain with given step encompassing series x
@ params
x - Required - A list-like object of integers or floats
step - Optional - Tick frequency
"""
xMax, xMin = math.ceil(max(x)), math.floor(min(x))
dMax, dMin = xMax + abs((xMax % step) - step) + (step if (xMax % step != 0) else 0), xMin - abs((xMin % step))
return range(dMin, dMax, step)
নমুনা আউটপুট
# Negative to Positive
series = [-2, 18, 24, 29, 43]
print(list(computeTicks(series)))
[-5, 0, 5, 10, 15, 20, 25, 30, 35, 40, 45]
# Negative to 0
series = [-30, -14, -10, -9, -3, 0]
print(list(computeTicks(series)))
[-30, -25, -20, -15, -10, -5, 0]
# 0 to Positive
series = [19, 23, 24, 27]
print(list(computeTicks(series)))
[15, 20, 25, 30]
# Floats
series = [1.8, 12.0, 21.2]
print(list(computeTicks(series)))
[0, 5, 10, 15, 20, 25]
# Step – 100
series = [118.3, 293.2, 768.1]
print(list(computeTicks(series, step = 100)))
[100, 200, 300, 400, 500, 600, 700, 800]
নমুনা ব্যবহার
import matplotlib.pyplot as plt
x = [0,5,9,10,15]
y = [0,1,2,3,4]
plt.plot(x,y)
plt.xticks(computeTicks(x))
plt.show()
লক্ষ্য করুন যে x- অক্ষের পূর্ণসংখ্যার মানগুলি 5 দ্বারা সমানভাবে ব্যবধানযুক্ত, যখন y- অক্ষের আলাদা ব্যবধান থাকে ( matplotlib
ডিফল্ট আচরণ, কারণ টিকগুলি নির্দিষ্ট করা হয়নি)।