- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Seaborn 的 kdeplot 制作一个漂亮的自由能表面(热图)。
我非常接近,但无法想出改变颜色条比例的方法。颜色条标尺很重要,因为它应该代表 map 上不同坐标处的能量差异。我需要知道如何按 -(0.5961573)*log(x)
缩放颜色条的值,其中 x
是颜色条的值。然后我可能还需要从那里标准化颜色条,以便最大值为 0。
这是我目前拥有的:
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.pyplot as plt
import seaborn as sns
rs=[]
dihes=[]
with open(sys.argv[1], 'r') as f:
for line in f:
time,r,dihe = line.split()
rs.append(float(r))
dihes.append(float(dihe))
sns.set_style("white")
sns.kdeplot(rs, dihes, n_levels=25, cbar=True, cmap="Purples_d")
plt.show()
最佳答案
一种方法是手动创建图形,然后直接修改标签。这涉及更多的代码行。您可能需要稍微调整格式,但这样的事情应该会让您走上正轨。
以下内容改编自this answer和 this answer .
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats
rs=[]
dihes=[]
with open(sys.argv[1], 'r') as f:
for line in f:
time,r,dihe = line.split()
rs.append(float(r))
dihes.append(float(dihe))
x = rs
y = dihes
kde = stats.gaussian_kde([x, y])
xx, yy = np.mgrid[min(x):max(x):(max(x)-min(x))/100, min(y):max(y):(max(y)-min(y))/100]
density = kde(np.c_[xx.flat, yy.flat].T).reshape(xx.shape)
sns.set_style("white")
fig, ax = plt.subplots()
cset = ax.contour(xx, yy, density, 25, cmap="Purples_r")
cb = fig.colorbar(cset)
cb.ax.set_yticklabels(map(lambda x: -0.5961573*np.log(float(x.get_text())),
cb.ax.get_yticklabels()))
关于python-3.x - 使用 Seaborn kdeplot 进行对数缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50917216/
我想用 seaborn.kdeplot 创建核密度估计侧面有一个颜色条。 import matplotlib.pyplot as plt import seaborn as sns import nu
我喜欢 multiple bivariate KDE plots 的 Seaborn 示例,但我希望在该示例中使用标准的 matplotlib 图例而不是自定义标签。 这是我尝试使用图例的示例: im
我正在尝试在 map (Shapefile) 上绘制 Seaborn 内核密度。 为了生成内核密度,我在 Seaborn Website 中使用了以下代码 x, y = np.random.multi
我正在尝试在我的 kdeplot 中自定义我的阴影颜色。 我想使用这个调色板,从浅绿色到#3bd6b0颜色至少有 15 个级别(但以后可能会更多)。为了做到这一点,我使用了 sns.light_pal
我有一个包含 ~900 行的数据框;我正在尝试为某些列绘制 KDEplots。在某些列中,大多数值是相同的最小值。当我包含太多最小值时,KDEPlot 会突然停止显示最小值。例如,以下包括 600 个
我正在尝试获取 Seaborn kdeplot处理我的数据集的示例。由于某种原因,我的一个数据集根本没有绘制,但另一个似乎绘制得很好。为了获得最小的工作示例,我仅从非常大的数据集中采样了 10 行。
我正在使用 kdeplot像这样绘制两个双变量分布的密度,其中 df_c 和 df_n 是两个 Pandas DataFrame: f, ax = plt.subplots(figsize=(6, 6
我正在使用 seaborn 创建一个边缘分布的 kdeplot,如 this answer 中所述。 .我稍微调整了代码,得到了这个: import matplotlib.pyplot as plt
我想从 jupyter notebook 中的文档执行以下示例:https://seaborn.pydata.org/generated/seaborn.kdeplot.html tips = sns
seaborn.kdeplot 的每个 hue 组如何? , 或 seaborn.displot与 kind='kde' 被赋予不同的 linestyle? 轴级和图形级选项都将接受 linestyl
我写了一个类来绘制一些数据点。我使用 seaborn 制作了 kernel density 图,它导致 (1) 框架消失了,我想要一个刚性框架,并且 (2) 图中有网格与 (3) 我想摆脱它们的背景颜
我是 seaborn 的新手,如果这是一个简单的问题,我深表歉意,但我无法在文档中的任何地方找到关于如何在 kdeplot 中控制 n_levels 绘制的级别的描述。这是一个例子: import s
我希望能够在 y 轴边距上绘制多个重叠的 kde 图(不需要 x 轴边距图)。每个 kde 图都对应于颜色类别(有 4 个),因此我将有 4 个 kde,每个描绘其中一个类别的分布。据我所知: imp
这是我的代码 import numpy as np from numpy.random import randn import pandas as pd from scipy import stats
是否可以在绘图之前从 sns.kdeplot() 中提取数据?IE。不使用功能y.get_lines()[0].get_data() 绘图后 最佳答案 这可以通过从 matplotlib Axes 对
下面的 kdeplot 在左边有一个峰值,我想更关注它: a = np.array([1] * 100 + [5]) sns.kdeplot(a) 我通常这样做的方法是 pyplot.xlim调用,但
我想在数据框中的 (x, y) 坐标提供的 NHL 溜冰场的背景图像上绘制 NHL 投篮及其分布(通过 Seaborn kdeplot)。我的代码生成的绘图 99% 达到了我想要的位置,但我不是 10
下面的线列表表示一组线(比方说,对于某些化学光谱),以 MHz 为单位。我知道用于探测这些线的激光线宽为 5 MHz。因此,天真地,这些带宽为 5 的线的核密度估计应该给我在使用上述激光的实验中产生的
我正在尝试绘制与 seaborn 文档中描述的情况非常相似的情况 http://seaborn.pydata.org/tutorial/axis_grids.html#plotting-pairwis
我正在尝试使用 Seaborn 的 kdeplot 制作一个漂亮的自由能表面(热图)。 我非常接近,但无法想出改变颜色条比例的方法。颜色条标尺很重要,因为它应该代表 map 上不同坐标处的能量差异。我
我是一名优秀的程序员,十分优秀!