好吧我正在策划pandas数据帧df1,df2和df3。我有一份df列表。
list_df = [df1, df2, df3]
sns.set_palette(sns.color_palette("dark"))
def plot_data(col1,col2,PLOT_TYPE):
for df in list_df:
if PLOT_TYPE == "time"
plt.plot(df[col1], df[col2]) #this works as expected, each df has different colors
else
plt.scatter(df[col1], df[col2]) #this plots every df as same color (blue), and the color is not from dark palette
plot_data("time", "values", "time")
plot_data("size", "values", "scatter)
我可以通过用c=dark_palette[i]
明确指出每个数据帧的颜色来解决这个问题
我需要深色调的颜色,我该怎么做? (除了绘制调色板,在GIMP中使用吸管)?另外,为什么调色板不适用于散射?
编辑:当我将 plt.plot 中的 plt.plot 更改为 plt.scatter 时,再次我得到所有相同的颜色(即蓝色)
我认为这是matplotlib的一个问题,这里是最小代码
x = np.linspace(0, 2, 100)
y1= x**2
y2 = x**3
plt.plot(x, y1)
plt.plot(x, y2)
plt.show()
plt.scatter(x, y1)
plt.scatter(x, y2)
plt.show()