Matplotlib从文件绘图时Y轴坐标不正确

Posted Sherlock-Tang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matplotlib从文件绘图时Y轴坐标不正确相关的知识,希望对你有一定的参考价值。

问题描述:

从文件中读取X坐标和Y坐标,绘制折线图,代码和结果如下:

import matplotlib.pyplot as plt
import matplotlib.animation as animation
from matplotlib import style


    
style.use(\'dark_background\')

fig = plt.figure()



graph_data = open(\'example.txt\',\'r\').read()
lines = graph_data.split(\'\\n\')
xs = []
ys = []
for line in lines:
    if len(line) > 1:
        x, y = line.split(\',\')
        xs.append(x)
        ys.append(y)

plt.plot(xs, ys)
plt.show()

 

解决:

我想这种bug也只有计算机专业能想到吧。。。

那就是——类型错误!从文件中读到的每个x和y为字符串,应该转换成int类型。改正后:

import matplotlib.pyplot as plt
import matplotlib.animation as animation
from matplotlib import style


    
style.use(\'dark_background\')

fig = plt.figure()



graph_data = open(\'example.txt\',\'r\').read()
lines = graph_data.split(\'\\n\')
xs = []
ys = []
for line in lines:
    if len(line) > 1:
        x, y = line.split(\',\')
        xs.append(int(x)) #注意读取到的是字符串类型
        ys.append(int(y)) 

plt.plot(xs, ys)
plt.show()

 

以上是关于Matplotlib从文件绘图时Y轴坐标不正确的主要内容,如果未能解决你的问题,请参考以下文章

Matplotlib基础使用

科学计算可视化

matplotlib如何获取坐标轴刻度值?

Matplotlib_常用图表

Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

用Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围