关于python中ggplot包出现 ‘DataFrame’ object has no attribute 'sort’问题的解决方法
最近发现python中也有ggplot包与R语言上的ggplot2库中的函数大体上一样,只有少数没有在python上实现,类似于coord_flip() 函数可以将柱状图变为水平放置的,在python中就没有办法实现。但是,大多数是可以使用的,这也大大方便了数据处理后的可视化操作。
在使用中还发现了一个问题,就是这样的:
ggplot(aes(x='factor(cyl)', fill='factor(vs)'), data=mtcars) + geom_bar(position = 'stack', stat = 'identity')
出现 ‘DataFrame’ object has no attribute ‘sort’的问题。感觉是因为fill参数有排序的过程,而pandas在0.20以上的版本就没有sort函数了,而是用的sort_values和sort_index函数了。所以,在此处要出错!
给出以下三种方式:
第一、在E:/Anaconda3/Lib/site-packages/ggplot/stats/stat_smooth.py(当然这应该是ggplot包的位置)下改变77行:
smoothed_data = smoothed_data.sort(‘x’)
改变为: smoothed_data = smoothed_data.sort_values(‘x’)
第二、在E:/Anaconda3/Lib/site-packages/ggplot/ggplot.py下改变602行: