python数据分析plt

numpy矩阵操作

[  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18

  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36

  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54

  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72

  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90

  91  92  93  94  95  96  97  98  99 100]

把这个一维数据,改成二维(4,25)数据



我的答案:

import numpy as np

dd=np.array(range(1,101))

aa=dd.reshape(4,25)

print(aa)


实现矩阵,中间为0,一圈为1的,100*100的矩阵,并输出

1  1 ……1  1

1  0 ……0  1

.

.

1  0 ……0  1

1  1 ……1  1

我的答案:

import numpy as np

a=np.ones((100,100))

a[1:99,1:99]=0

print(a)


使用np.random.random,制作10*10的矩阵,然后从每一行中,求出每行最大值,并输出。

我的答案:

import numpy as np

bb=np.random.random([10,10])

print(bb)

for i in range(0,10):

    for j in range(0,10):

        x=i

        y=j

        if x==i: 

            continue

    print(max(bb[x]))


plt绘制折线图

x=[5,10,15……100],y=x*x+2绘制折线图

我的答案:

import matplotlib.pyplot as plt

import numpy as np

x=np.arange(5,101,5)

plt.plot(x,x**2+2)

plt.show()



使用样式字符串绘制两条线:

1、红色、实线、圆点     sin()

2、黄色、虚线、三角点   cos()

我的答案:

import matplotlib.pyplot as plt

import numpy as np

x=np.linspace(0,4*np.pi)

y=np.sin(x)

y2=np.cos(x)

plt.plot(x,y,'o-',color='r')

plt.plot(x,y2,':>',color='y')

plt.show()

 
绘制散点图
要求点为菱形,绿色,x轴为"x",y轴为"2*sin(x)",标题为“2*sin(x)图”,有图例。

我的答案:

import numpy as np

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']='SimHei'

plt.rcParams['axes.unicode_minus']=False

x=np.linspace(0,np.pi*4,100)

y=np.sin(x)*2

plt.scatter(x,y,marker='D',color='green')

plt.title('2*sin(x)图')

plt.legend(['2*sin(x)'])

plt.show()




绘制 散点图,使用pandas读取csv格式数据,x为日期,xlabel为“日期”,y值为为最高价与最低价的差值,ylablel为“差值”

000001.csv

我的答案:

import numpy as np

import matplotlib.pyplot as plt

import pandas as pd

plt.rcParams['font.sans-serif']='SimHei'

plt.rcParams['axes.unicode_minus']=False

date=pd.read_excel("D:\\Project\\19jx2\\000001.xlsx",sheet_name=0,usecols=["日期","最高价","最低价"])

x=date["日期"]

a=date["最高价"]

b=date["最低价"]

y=a-b

plt.scatter(x,y,marker='h',color='r')

plt.xlabel('日期')

plt.ylabel('差值')

plt.show()



绘制散点图:

使用000001.csv数据,计算最高价与开盘价之间的差diff。

绘制出前后两天的diff散点图,研究是否具有相关性。

 000001.csv   

我的答案:

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

max,kai=np.loadtxt("D:\\Project\\000001.csv",delimiter=',',skiprows=1,usecols=(4,6),unpack=True)

diff=max-kai

yestwoday=diff[:-2]

today=diff[2:]

plt.scatter(x=yestwoday,y=today,s=50,c='r',marker=',',alpha=0.5)

plt.show()

 

 

 

 

 

 

 

 

posted @ 2021-01-09 08:15  1+1=  阅读(164)  评论(0)    收藏  举报