আমি লিনিয়ার রিগ্রেশন প্লট করতে সিবর্নের ল্যাম্পলট ব্যবহার করছি, আমার ডেটাসেটকে একটি শ্রেণিবদ্ধ ভেরিয়েবলের সাথে দুটি গ্রুপে বিভক্ত করছি।
এক্স এবং ওয়াই উভয়ের জন্য, আমি উভয় প্লটের উপর ম্যানুয়ালি নীচের গণ্ডিটি সেট করতে চাই , তবে উপরের সীমানাটি সিবার্ন ডিফল্টে রেখে দেব। এখানে একটি সাধারণ উদাহরণ:
import pandas as pd
import seaborn as sns
import random
n = 200
random.seed(2014)
base_x = [random.random() for i in range(n)]
base_y = [2*i for i in base_x]
errors = [random.uniform(0,1) for i in range(n)]
y = [i+j for i,j in zip(base_y,errors)]
df = pd.DataFrame({'X': base_x,
'Y': y,
'Z': ['A','B']*(n/2)})
mask_for_b = df.Z == 'B'
df.loc[mask_for_b,['X','Y']] = df.loc[mask_for_b,] *2
sns.lmplot('X','Y',df,col='Z',sharex=False,sharey=False)
এটি নিম্নলিখিত ফলাফলগুলি দেয়:
তবে এই উদাহরণে আমি xlim এবং ylim (0, *) হতে চাই। আমি sns.plt.ylim এবং sns.plt.xlim ব্যবহার করার চেষ্টা করেছি তবে এগুলি কেবল ডান হাতের প্লটকেই প্রভাবিত করে। উদাহরণ:
sns.plt.ylim(0,)
sns.plt.xlim(0,)
আমি ফেসট্রিডের প্রতিটি প্লটের জন্য কীভাবে xlim এবং ylim অ্যাক্সেস করতে পারি?
numpy.random
মডিউলটির সাথে নিজেকে পরিচিত হন তবে আপনি এলোমেলো ডেটা তৈরি করতে নিজেকে অনেক সময় বাঁচাতে পারেন (যা করার জন্য খুব দরকারী জিনিস হতে পারে!)। উদাহরণস্বরূপ, আপনি পেতেbase_x
এবংbase_y
সাথে পারেbase_x = np.random.rand(n); base_y = base_x * 2
।y
পরিবর্তনশীল তারপর একইভাবে ভেক্টরকৃত অপারেশন দিয়ে তৈরি করা যেতে পারে।