Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ Implementing Rational Functions in Python | Functions and Their Properties
Mathematics for Data Science with Python

bookImplementing Rational Functions in Python

メニューを表示するにはスワイプしてください

Unlike previous functions, rational functions need special care when plotted in Python. Because they have undefined points and infinite values, you must split the domain to prevent errors.

1. Defining the Function

We define our rational function as:

def rational_function(x):
    return 1 / (x - 1)

Key Considerations:

  • x=1x = 1 must be excluded from calculations to avoid division by zero;
  • The function will be split into two domains (left and right of x=1x = 1).

2. Splitting the Domain

To avoid division by zero, we generate two separate sets of x-values:

x_left = np.linspace(-4, 0.99, 250)  # Left of x = 1
x_right = np.linspace(1.01, 4, 250)  # Right of x = 1

The values 0.99 and 1.01 ensure we never include x=1x = 1, preventing errors.

3. Plotting the Function

plt.plot(x_left, y_left, color='blue', linewidth=2, label=r"$f(x) = \frac{1}{x - 1}$")
plt.plot(x_right, y_right, color='blue', linewidth=2)

The function jumps at x=1x = 1, so we need to plot it in two pieces.

4. Marking Asymptotes and Intercepts

  • Vertical Asymptote (x=1x = 1):
plt.axvline(1, color='red', linestyle='--',
            linewidth=1, label="Vertical Asymptote (x=1)")
  • Horizontal Asymptote (y=0y = 0):
plt.axhline(0, color='green', linestyle='--', 
            linewidth=1, label="Horizontal Asymptote (y=0)")
  • Y-Intercept at x=0x = 0:
y_intercept = rational_function(0)
plt.scatter(0, y_intercept, color='purple', label="Y-Intercept")

5. Adding Directional Arrows

To indicate the function extends infinitely:

plt.annotate('', xy=(x_right[-1], y_right[-1]), xytext=(x_right[-2], y_right[-2]), arrowprops=dict(arrowstyle='->', color='blue', linewidth=1.5))
question mark

Which code correctly defines and plots the rational function f(x)=1x1f(x) = \frac{\raisebox{1pt}{$1$}}{\raisebox{-1pt}{$x-1$}} while avoiding division by zero?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  6

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 1.  6
some-alt