astrodatagui: FlareSummaryPlotGUI: use panda to show statistics
This commit is contained in:
@@ -45,6 +45,8 @@ class FlareSummaryPlotGUI(QWidget):
|
||||
self.cbSpTypeG.setChecked(True)
|
||||
self.cbSpTypeF = QCheckBox("F")
|
||||
self.cbSpTypeF.setChecked(True)
|
||||
self.cbSpTypeUnknown = QCheckBox("Unknown")
|
||||
self.cbSpTypeUnknown.setChecked(True)
|
||||
|
||||
self.buttonGridLayout.addWidget(QLabel("Plot Types: "), 0, 0)
|
||||
self.buttonGridLayout.addWidget(self.btShowFlaresPerStar, 0, 1)
|
||||
@@ -60,78 +62,51 @@ class FlareSummaryPlotGUI(QWidget):
|
||||
self.buttonGridLayout.addWidget(self.cbSpTypeK, 2, 3)
|
||||
self.buttonGridLayout.addWidget(self.cbSpTypeG, 2, 4)
|
||||
self.buttonGridLayout.addWidget(self.cbSpTypeF, 2, 5)
|
||||
self.buttonGridLayout.addWidget(self.cbSpTypeUnknown, 2, 6)
|
||||
self.mainLayout.addLayout(self.buttonGridLayout)
|
||||
self.mainLayout.addWidget(toolbar)
|
||||
self.mainLayout.addWidget(fc)
|
||||
self.resize(1000, 800)
|
||||
|
||||
def btShowFlaresPerStarClicked(self):
|
||||
showSourceFilter = np.full(len(self.starFLareDictList), False)
|
||||
showSpectralTypeFilter = np.full(len(self.starFLareDictList), False)
|
||||
data = []
|
||||
for entry in self.starFLareDictList:
|
||||
if((self.cbKepler.isChecked() and entry["Source"] == "Kepler") or
|
||||
(self.cbK2.isChecked() and entry["Source"] == "K2") or
|
||||
(self.cbTESS.isChecked() and entry["Source"] == "TESS")):
|
||||
data.append(entry)
|
||||
data = pd.DataFrame(self.starFLareDictList)
|
||||
x = np.arange(start=1, stop=len(data)+1, step=1, dtype=int)
|
||||
|
||||
if(self.cbKepler.isChecked()):
|
||||
showKepler = data["Source"] == "Kepler"
|
||||
if(self.cbK2.isChecked()):
|
||||
showK2 = data["Source"] == "K2"
|
||||
if(self.cbTESS.isChecked()):
|
||||
showTESS = data["Source"] == "TESS"
|
||||
|
||||
showSourceFilter = showKepler | showK2 | showTESS
|
||||
|
||||
if(self.cbSpTypeL.isChecked()):
|
||||
Lfilter = data["SpType"].str.startswith("L")
|
||||
Lfilter &= showSourceFilter
|
||||
if(self.cbSpTypeM.isChecked()):
|
||||
Mfilter = data["SpType"].str.startswith("M")
|
||||
Mfilter &= showSourceFilter
|
||||
if(self.cbSpTypeK.isChecked()):
|
||||
Kfilter = data["SpType"].str.startswith("K")
|
||||
Kfilter &= showSourceFilter
|
||||
if(self.cbSpTypeG.isChecked()):
|
||||
Gfilter = data["SpType"].str.startswith("G")
|
||||
Gfilter &= showSourceFilter
|
||||
if(self.cbSpTypeF.isChecked()):
|
||||
Ffilter = data["SpType"].str.startswith("F")
|
||||
Ffilter &= showSourceFilter
|
||||
if(self.cbSpTypeUnknown.isChecked()):
|
||||
Unknownfilter = data["SpType"].str.startswith("-")
|
||||
Unknownfilter &= showSourceFilter
|
||||
|
||||
self.figureAxis.clear()
|
||||
#data = self.starFLareDictList[showSourceFilter]
|
||||
x = np.arange(start=1, stop=len(data)+1, step=1, dtype=int)
|
||||
print(len(data), len(x))
|
||||
|
||||
Lfilter = []; Mfilter = []; Kfilter = []; Gfilter = []; Ffilter = []
|
||||
Unknownfilter = []
|
||||
for d in data:
|
||||
try:
|
||||
if(d["SpType"][0] == "L"):
|
||||
LVal = True
|
||||
MVal = KVal = GVal = FVal = UnknownVal = False
|
||||
if(d["SpType"][0] == "M"):
|
||||
MVal = True
|
||||
LVal = KVal = GVal = FVal = UnknownVal = False
|
||||
if(d["SpType"][0] == "K"):
|
||||
KVal = True
|
||||
MVal = LVal = GVal = FVal = UnknownVal = False
|
||||
if(d["SpType"][0] == "G"):
|
||||
GVal = True
|
||||
MVal = KVal = LVal = FVal = UnknownVal = False
|
||||
if(d["SpType"][0] == "F"):
|
||||
FVal = True
|
||||
MVal = KVal = GVal = LVal = UnknownVal = False
|
||||
except:
|
||||
UnknownVal = True
|
||||
MVal = KVal = GVal = FVal = LVal = False
|
||||
finally:
|
||||
Lfilter.append(LVal)
|
||||
Mfilter.append(MVal)
|
||||
Kfilter.append(KVal)
|
||||
Gfilter.append(GVal)
|
||||
Ffilter.append(FVal)
|
||||
Unknownfilter.append(UnknownVal)
|
||||
|
||||
data = pd.DataFrame(data)
|
||||
Lfilter = np.array(Lfilter, dtype=bool)
|
||||
Mfilter = np.array(Mfilter, dtype=bool)
|
||||
Kfilter = np.array(Kfilter, dtype=bool)
|
||||
Gfilter = np.array(Gfilter, dtype=bool)
|
||||
Ffilter = np.array(Ffilter, dtype=bool)
|
||||
Unknownfilter = np.array(Unknownfilter, dtype=bool)
|
||||
#print("L Type stars: ", Lfilter)
|
||||
print("M Type stars: ", type(Mfilter), Mfilter)
|
||||
#print("K Type stars: ", Kfilter)
|
||||
#print("G Type stars: ", Gfilter)
|
||||
#print("F Type stars: ", Ffilter)
|
||||
print("x: ", type(x), x)
|
||||
print("data: ", type(data))
|
||||
if(self.cbSpTypeL.isChecked()):
|
||||
if(np.any(Lfilter)):
|
||||
self.figureAxis.scatter(x[Lfilter], data[Lfilter]["sapPeaksCount"], marker="o", color="brown", label="L SAP Count")
|
||||
self.figureAxis.scatter(x[Lfilter], data[Lfilter]["pdcsapPeaksCount"], marker="x", color="brown", label="L PDCSAP Count")
|
||||
if(self.cbSpTypeM.isChecked()):
|
||||
if(np.any(Mfilter)):
|
||||
print(x[Mfilter])
|
||||
print(data[Mfilter])
|
||||
self.figureAxis.scatter(x[Mfilter], data[Mfilter]["sapPeaksCount"], marker="o", color="red", label="M SAP Count")
|
||||
self.figureAxis.scatter(x[Mfilter], data[Mfilter]["pdcsapPeaksCount"], marker="x", color="red", label="M PDCSAP Count")
|
||||
if(self.cbSpTypeK.isChecked()):
|
||||
@@ -146,6 +121,10 @@ class FlareSummaryPlotGUI(QWidget):
|
||||
if(np.any(Ffilter)):
|
||||
self.figureAxis.scatter(x[Ffilter], data[Ffilter]["sapPeaksCount"], marker="o", color="greenyellow", label="F SAP Count")
|
||||
self.figureAxis.scatter(x[Ffilter], data[Ffilter]["pdcsapPeaksCount"], marker="x", color="greenyellow", label="F PDCSAP Count")
|
||||
if(self.cbSpTypeUnknown.isChecked()):
|
||||
if(np.any(Unknownfilter)):
|
||||
self.figureAxis.scatter(x[Unknownfilter], data[Unknownfilter]["sapPeaksCount"], marker="o", color="gray", label="Unknown SAP Count")
|
||||
self.figureAxis.scatter(x[Unknownfilter], data[Unknownfilter]["pdcsapPeaksCount"], marker="x", color="gray", label="Unknown PDCSAP Count")
|
||||
|
||||
self.figureAxis.set_ylabel("Flare count")
|
||||
self.figure.canvas.draw_idle()
|
||||
Reference in New Issue
Block a user