как связать точки координат после изменения значений с помощью al oop в matplotlib - PullRequest
1 голос
/ 07 августа 2020

Мне нужно изменить значения координат, и мне нужно связать их

import numpy as np
from matplotlib import pyplot as plt
import pandas as pd

data = np.array([
    [0, 2],
    [0, 3],
    [0, 6],
    [0, 7],
    [7, 9],
    [7, 8],
])
list =data.tolist()
x, y = data.T
for x,y in list:
    x+=1 
    plt.scatter(x,y,color='red',)

Я использовал al oop для изменения значений, до сих пор все работало правильно.

plt.plot(x,y,)

я не знаю почему, но он не работает должным образом, я не смог связать значения координат после его изменения с помощью al oop (он работает без использования al oop)

plt.show(x,y)

это график без используя:

for x,y in list:
        x+=1 
        plt.scatter(x,y,color='red')

https://i.stack.imgur.com/KUQro.png

ı попробуйте сделать этот график с новыми значениями координат

1 Ответ

0 голосов
/ 08 августа 2020

Matplotlib и Numpy предназначены для go рука об руку, а арифметика c в массивах НАМНОГО проще, чем в списках, поэтому забудьте о преобразовании в списки

data = np.array([ # shape of data is (6, 2) - six rows, two columns
    [0, 2],
    [0, 3],
    [0, 6],
    [0, 7],
    [7, 9],
    [7, 8],
]) 

x, y = data.T # x, y are two Numpy arrays, their shape (6,) because data.T is (2, 6)

# create a figure with two sublots in a single row, "1,2"
# stretch the h-size to accomodate two subplots,
# use exactly the same x limits and ticks on both subplots
fig, (ax0, ax1) = plt.subplots(1,2, figsize=(8,3), sharex=True)

# in one subplot the original data, in the other the modified x
ax0.plot(x, y)
ax1.plot(x+1, y)  # simply add 1 to the array x
...