python数据可视化(三)——散点图

散点图 scatter


参考书目
刘大成,python数据可视化之matplotlib实践,中国工信出版社
阮敬,python数据分析基础,中国统计出版社

例子
import numpy as np
import matplotlib.pyplot as plt
a = np.loadtxt('data.txt')
x = a[:,0]
y = a[:,1]
plt.scatter(x,y,c = 'orange',alpha = 0.4)
# c 代表颜色,alpha表示透明度
plt.xlabel('num')
plt.ylabel('value')
plt.show()

data.txt

22800	11250
21300	11250
30600	12450
21600	12000
……		……
参数说明
  • c:颜色
  • alpha:透明度
  • s:散点标记的大小
例子
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np

a = np.random.randn(100)
b = np.random.randn(100)
print(a)

plt.scatter(a,b,s = np.power(10*a+20*b,2), # s 表示大小
			c = np.random.randn(100), # c表示颜色
			cmap = mpl.cm.RdYlBu, # cmap:将浮点数映射成颜色映射表
			marker = 'o')
plt.show()
轮子

(需根据实际的数据,修改pandas的列名,根据需要修改画图参数)

数据:data.txt

x	value
1	93
30	96
60	84
90	84
120	48
150	38
180	51
210	57
240	40
270	45
300	50
330	75
360	80
390	60
420	72
450	67
480	71
510	7
540	74
570	63
600	69

代码

# 绘值折线图(plot)
def ScatterPlot(x, y):
    import matplotlib.pyplot as plt
    # 设置中文显示
    import matplotlib as mpl
    mpl.rcParams["font.sans-serif"] = ["SimHei"]
    mpl.rcParams["axes.unicode_minus"] = False

    plt.figure()                    # 创建画布
    plt.scatter(x, y,
                # color = 'orange',   # 设置条形图的颜色
                c= x,
                s = y * 10,         # 设置散点的大小
                alpha = 0.8)        # 设置图片透明度
    # plt.plot(x, y, '--', color = 'orange', alpha = 0.8)       # 绘制折线
    # plt.bar(x, y,alpha = 0.4, color = 'orange', width = 20)   # 绘制柱状图
    plt.xlabel('x/m')               # 设置 X 坐标轴标签
    plt.ylabel('value')             # 设置 y 坐标轴标签
    # plt.xticks(x)                   # 设置 x 坐标轴的刻度
    plt.title('请输入标题')         # 设置标题
    plt.savefig('out.png', dpi=300)     # 存储图片
    plt.show()


# 读取数据
def reader(data):
    import pandas as pd
    file = pd.read_csv(data, sep='\s+')
    data = pd.DataFrame(file, columns = ['x', 'value'])
    x = data['x']
    y = data['value']
    return x, y


# 代码执行部分
data = 'data.txt'
x, y = reader(data)
ScatterPlot(x, y)    # 绘制折线图

在这里插入图片描述
残留问题:如何调整X 轴的间隔

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值