ap2*_*p21 7 python matplotlib pandas
我正在使用标准pandas.df.plot()
函数在数据框中绘制两列。出于某种原因,x 轴值和 xlabel 不可见!似乎也没有选项可以在函数中打开它们(参见https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.plot.html)。
有人知道发生了什么,以及如何纠正它?
import matplotlib.cm as cm
import pandas as pd
ax1 = df.plot.scatter(x='t', y='hlReference', c='STEP_STRENGTH', cmap=cm.autumn);
Run Code Online (Sandbox Code Playgroud)
这是 Jupyter 笔记本的一个错误,显示 Pandas 散点图,在使用 Matplotlib 作为绘图后端时显示色阶。
@june-skeeter 在答案作品中有一个解决方案。或者,传递sharex=False
给 df.plot.scatter 并且您不需要创建子图。
import matplotlib.cm as cm
import pandas as pd
X = np.random.rand(10,3)
df = pd.DataFrame(X,columns=['t','hlReference', 'STEP_STRENGTH'])
df.plot.scatter(
x='t',
y='hlReference',
c='STEP_STRENGTH',
cmap=cm.autumn,
sharex=False
)
Run Code Online (Sandbox Code Playgroud)
请参阅此已关闭的熊猫问题中的讨论。在相关的 SO 答案中引用了上述解决方案。
pandas v1.1.0 仍然存在问题。您可以在此处跟踪问题:https : //github.com/pandas-dev/pandas/issues/36064
首先创建您的轴实例,然后将其作为参数发送给 plot()
import matplotlib.cm as cm
import pandas as pd
X = np.random.rand(10,3)
df = pd.DataFrame(X,columns=['t','hlReference', 'STEP_STRENGTH'])
fig,ax1=plt.subplots()
df.plot.scatter(x='t', y='hlReference', c='STEP_STRENGTH', cmap=cm.autumn,ax=ax1)
Run Code Online (Sandbox Code Playgroud)