Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- from matplotlib import pyplot as plt
- def plotEntries(entries,keyX,keyY,sortingKey,graphName,colors = None,markers = None):
- #assert len(keysX) == len(colors) and len(keysX) == len(markers)
- technologies = list(set([el[sortingKey] for el in entries]))
- for i,tech in enumerate(technologies):
- x = [el[keyX] for el in entries if el[sortingKey] == tech]
- y = [el[keyY] for el in entries if el[sortingKey] == tech]
- plt.scatter(x,y)
- print(tech)
- if i == 5:
- break
- plt.title(keyX + " vs " + keyY)
- plt.xlabel(keyX)
- plt.ylabel("test")
- plt.savefig(graphName + ".png")
- if __name__ == "__main__":
- fileName = "dataSheet.csv"
- # Opening file
- with open(fileName,"r") as f:
- data = f.readlines()
- delimiter = "|"
- entryLength = 30
- # Some constants
- header = data[0][:-1]
- headers = header.split(delimiter)
- entries = []
- # Dank parsing
- for dataIt in range(1,len(data)):
- line = data[dataIt][:-1]
- values = line.split(delimiter)
- if len(values) != entryLength:
- continue
- entry = dict()
- for val,key in zip(values,headers):
- entry[key] = val
- entries.append(entry)
- # Dank filtering
- frequence = 1e9
- entries = [el for el in entries if float(el["fs [Hz]"]) >= frequence]
- plotEntries(entries,"fs [Hz]","P [W]","TECHNOLOGY","test",None,None)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement