如何使用matplotlib格式化日志比例

时间:2017-08-08 12:53:56

标签: python pandas dataframe

我试图在对数刻度上制作一个情节。我需要启动log x轴
  从零开始。例如0,10 ^ 0,10 ^ 1,10 ^ 2等等

import numpy as np
import seaborn as sns
%matplotlib inline
import matplotlib.pyplot as plt
x = db5.Var1
sns.distplot(x,hist_kws=dict(cumulative=True),kde_kws=dict(c‌​umulative=True),hist‌​=False,color='green'‌​)
plt.xlabel('Seconds')
plt.ylabel('CDF')
plt.xscale('log')
plt.xlim(0)
plt.grid(True)
plt.legend(loc='right')
plt.title('CDF') 

1 个答案:

答案 0 :(得分:1)

您需要matplotlib.pyplot.xticks。在您的示例中:

xticks(x_values) 使用模块名称添加函数调用,具体取决于您的导入。

例如,在ipython --py中我输入:

1:x_values = [10,20,30,40,50,60,70,80,90,100]

在[2]中:scatter(x_values,x_values) 出[2]:

在[3]中:xticks(x_values) 得到

this

请注意,这会在右侧留下一些空间,因为最初每20个刻度最多为120个。要在不知道最大值的情况下每10个刻度一次,您可以对xticks进行两次调用:

xticks(范围(0,int(xticks()[0] [ - 1])+ 1,10))