如何创建scatterplots来显示点的密度? 例如,给定
import pandas as pd
import numpy as np
import itertools
df_flat = pd.DataFrame(itertools.product(range(100),repeat=2),
columns=["x","y"])/100
df_corr = pd.concat([df_flat, pd.DataFrame({
"x": list(itertools.chain.from_iterable(itertools.repeat(range(100),100))),
"y": list(itertools.chain.from_iterable(itertools.repeat(range(100),100))),
})/100])
def scatter_plot(df):
ax = df.plot.scatter(x="x",y="y")
ax.grid(b=True)
ax.set_title("Correlation={:.3%}".format(np.corrcoef(df.x,df.y)[0][1]))
scatter_df(df_flat)
和scatter_df(df_corr)
产生几乎相同的情节:
和
(唯一的区别是标题)。
如何通过例如使密度更大(在对角线附近)的颜色更饱和来使图片与众不同?