关于使用python matplotlib 中的hist柱状图的问题

#导入数据
import pymysql
import numpy as np
import pandas as pd
import matplotlib.pylab as pyl


conn=pymysql.connect(host="127.0.0.1",user="root",password="root",db="f")
sql="select * from taob"
data=pd.read_sql(sql,conn)
sql_0="select count(*) from taob where price = 0"
data_0=pd.read_sql(sql_0,conn)


x=0
data["price"][(data["price"]==0)]=None
for i in data.columns:
    for j in range(len(data)):
        if(data[i].isnull()[j]):
            data[i][j]="36"
            x+=1




data2=data.T
price=data2.values[2]


comt=data2.values[3]
#
pyl.plot(price,comt,'or')
#pyl.show()


line=len(data.values)
col=len(data.values[0])
da=data.values
for i in range(0,line):
    for j in range(0,col):
        if(da[i][2]>130):
            print(da[i][j])
            da[i][j]=36
        if(da[i][3]>300):
            print(da[i][j])
            da[i][j]=58


da2=da.T
price=da2[2]
comt=da2[3]
#pyl.plot(price,comt,'o')
#pyl.show()




#分布分析
pricemax=da2[2].max()
pricemin=da2[2].min()
comtmax=da2[3].max()
comtmin=da2[3].min()


#极差:最大值-最小值
pricerg=pricemax-pricemin
comtrg=comtmax-comtmin


#组距:极差/组数
pricedst=pricerg/12
comtdst=comtrg/12


#画价格的直方图
pricesty=np.arange(pricemin,pricemin,pricerg)
#pyl.hist(da2[2],pricesty)

#pyl.show()


在以上代码中,在最后的hist画图,会出现卡住的问题。

经过自己的一些分析,应该是由于da2中的数组的dtype类型导致的


这个地方可以使用numpy模块强制转换dtype类型解决:

numpy.array('数据',dtype='数据类型')。


以上是自己的一些学习经历,如果有什么不对的地方,希望大神可以指点下,谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值