我努力寻找绘制梯度4D表面数据的解决方案。
我的测试数据:
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
data_dic = {
"ad_cliks": [68, 74, 95, 79, 71, 72],
"Desktop": [1.06412, 0.92757, 0.76789, 0.89747, 0.96873, 0.92210],
"Mobile": [1.04412, 0.94757, 0.72789, 0.86747, 0.91873, 0.96210],
"Tablet": [1.01412, 0.91757, 0.75789, 0.90747, 0.90873, 0.97210]
}
df = pd.DataFrame(data_dic)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
img = ax.scatter(df['Desktop'], df['Mobile'], df['Tablet'], c=df['ad_cliks'], marker='o', cmap=plt.cm.winter))
ax.set_xlabel('Desktop')
ax.set_ylabel('Mobile')
ax.set_zlabel('Tablet')
fig.colorbar(img)
plt.show()
我要使表面适应这一点,其中值由df ['ad_cliks']数据中的颜色范围定义。
类似于示例合并的事情: color surface,fit surface,其中颜色是渐变。 这意味着,表面最大极限值以最高的颜色值出现,而表面最小极限值以最低的颜色值出现。
!请注意,数据不是线性的,任何数据颜色都可以出现在任何位置。
目前,根据color surface,我只能创建不适合拟合的简单曲面。
感谢大家的辛勤工作。