-1

わかりました。これが可能かどうかはわかりません。xとyの両方の自然対数関数を持つmatplotlibを使用して、Pythonでグラフをプロットしようとしています。

まず、自然対数を使用してプロットする方法に関する指示を含む投稿を探しました。ここで答えの一部を見つけ、他の部分をここで見つけました。

問題は、2 つの線を 1 つのグラフにプロットしようとしていることです。

方程式は次のとおりです。

1) 0.91 - 0.42 * P = Q

2) 6.999 - .7903 * ln (P) = ln (Q)

スケールの問題を考えると、これらの 2 つの線を 1 つのグラフに重ねることは可能ですか? どうすればいいですか?

私は次のことを試しました:

from pylab import *
import matplotlib.pyplot as plt
import matplotlib
get_ipython().magic('matplotlib inline')
import numpy as np
import pandas as pd

P = np.linspace(0, 1, 11)

P

matplotlib.rcParams['xtick.major.pad'] = 5
matplotlib.rcParams['ytick.major.pad'] = 5

fig, ax = plt.subplots(figsize = (12,6))

axes = plt.gca()
axes.set_ylim([0, 16])

ax.plot(P, 0.91 - 0.42 * P, color = "BLUE", lw = 3, label = 'C1')

x = P ** np.e
y = 6.999 - .7903 * x
y1 = y ** np.e
ax.loglog(x, y, basex = np.e, basey = np.e)
ax.legend()

ax.set_title("Cluster 1 Pricing")

ax.xaxis.labelpad = 5
ax.yaxis.labelpad = 5

ax.set_xlabel("Norm P")
ax.set_ylabel("Norm Q");

しかし、これはエラーを返します:

ValueError: posx と posy は有限値でなければなりません

4

1 に答える 1