我尝试将5个csv文件放入python中的一个图形中。在每个csv文件的第一列中,所有数字都是相同的,我想将它们视为图中每个csv文件的x值。但是,每个csv文件中还有两列(总计3列),但是我只想将第二列绘制为同一图上每个csv文件的“ y值”,理想情况下,获得5条不同的线,每个文件一个。有人对我该怎么做有任何想法吗?
我已经将文件上传到变量file_list
答案 0 :(得分:0)
假设您的文件名为<body>
<app>Loading...</app>
<script
src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
crossorigin="anonymous"></script>
<script src="_framework/blazor.webassembly.js"></script>
<script>
window.initializeCarousel = () =>
{
$('#carouselExampleIndicators').carousel({interval: 2000})
$('#carouselExampleIndicators-prev').click (
() => $('#carouselExampleIndicators').carousel('prev') );
$('#carouselExampleIndicators-next').click (
() => $('#carouselExampleIndicators').carousel('next') );
}
</script>
</body>
,File0.csv
,File1.csv
,File2.csv
,File3.csv
,则可以遍历它们,忽略第三列的值,并绘制x和y值。以下伪代码将用于3列
File4.csv
答案 1 :(得分:0)
读取第一个文件并创建一个列表列表,其中每个列表由该文件的两列填充。然后一一读取其他文件,并将它们的y列附加到此列表的对应索引中。
答案 2 :(得分:0)
答案 3 :(得分:0)
from pathlib import Path
import pandas as pd
import matplotlib.pyplot as plt
files = list(Path("/path/to/folder/with/csvs").glob("*.csv"))
fig, ax = plt.subplots(figsize=(10, 10))
x_col, y_col = "x_column_name", "y_column_name"
for file in files:
file_name = file.stem
df = pd.read_csv(file)
df.plot(x=x_col, y=y_col, ax=ax, label=file_name, legend=True)
fig # If using a jupyter notebook, and you've run a cell with %matplotlib inline