【问题标题】:How to plot a dataframe that contains values spread over a large spectrum of values?如何绘制包含分布在大量值范围内的值的数据框?
【发布时间】:2017-12-03 12:58:14
【问题描述】:

我有以下数据框,是在多个回归模型上运行网格搜索的结果:

可以注意到,0.0009 周围有许多值,但有几个值要高几个数量级(-1.6-2.3 等)。

我想绘制这些结果,但我似乎没有找到获得可读图的方法。我尝试了一个条形图,但我得到了类似的东西:

如何使这个条形图更具可读性?或者还有什么其他类型的图更适合可视化这些数据?

编辑:这是数据框,导出为 CSV:

,a,b,c,d
LinearRegression,0.000858399508896,-4.11609208874e+20,0.000952538859738,0.000952538859733
RandomForestRegressor,-1.62264355718,-2.30218457629,0.0008957696846039999,0.0008990722465239999
ElasticNet,0.000883257900658,0.0008525502791760002,0.000884706195921,0.000929498696126
Lasso,7.92193516085e-05,-1.84086765436e-05,7.92193516085e-05,-1.84086765436e-05
ExtraTreesRegressor,-6.320170496909999,-6.30420308033,,
Ridge,0.0008584791396339999,0.0008601028734780001,,
SGDRegressor,-4.62522968756,,,

【问题讨论】:

  • 我们如何知道您希望如何表示您的数据?拿笔和纸画出您想要的情节,然后我们可能会帮助您使用您选择的库来实现这一点(假设问题已被相应标记)。
  • 正如我所提到的,我想以可读的格式绘制数据。我曾尝试使用条形图,我认为这会使图可读。似乎他们没有。至少我尝试过的方式。我不知道我应该采取什么方法,这是我的问题。
  • 您无法在世界地图上绘制曼哈顿的街道名称。同样在这里。我告诉过你的方法。拿起笔和纸,画出你想要的情节。
  • 你能发布实际的数据框(文本)而不是屏幕截图吗?
  • @akilat90 我已经编辑了我的帖子。

标签: python pandas matplotlib plot


【解决方案1】:

您可以使图表具有对数刻度,这通常用于绘制范围非常大的数据。这稍微混淆了解释,因为现在每个等效距离都是等效的数量级差异。您可以在此处阅读对数刻度:

https://en.wikipedia.org/wiki/Logarithmic_scale

【讨论】:

  • 这听起来非常接近我的需要。但是负值会发生什么?理想情况下,对于上面的情节,我希望它们低于 0。
猜你喜欢
  • 1970-01-01
  • 2020-08-21
  • 2019-06-07
  • 2018-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-22
相关资源
最近更新 更多