Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#28 edit chart menu #315

Open
wants to merge 152 commits into
base: v2.1
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
7340ba6
Profiler Changes
JasonMai11 Oct 18, 2023
4567921
Profiler implementation
JasonMai11 Oct 31, 2023
03a1f0b
Updating profiler without changing updatedatasetProperty functionality
JasonMai11 Nov 4, 2023
85418f0
datasetProperty Function
JasonMai11 Nov 8, 2023
b156ef3
Update Artifact.scala
JasonMai11 Nov 8, 2023
eddea71
forceProfiler
JasonMai11 Nov 9, 2023
bd70602
Profiler Implementation and Testing
JasonMai11 Nov 11, 2023
17be764
Completion of Profiler
JasonMai11 Nov 15, 2023
0165187
Updated Param List
JasonMai11 Nov 22, 2023
ddb4595
#24 Temporary Change for frontend with new Parameter Encoding For nes…
cameronjtoy Nov 23, 2023
f789c8c
yIndex Change
JasonMai11 Nov 24, 2023
72dcb0a
ColIDListParameter working
cameronjtoy Nov 29, 2023
279e2d6
Bar Chart Editor Changes
cameronjtoy Dec 1, 2023
6c3805a
new bar chart editor
cameronjtoy Dec 4, 2023
c8ac19d
Update PlotUtils.scala
JasonMai11 Dec 4, 2023
e4b1c3b
empty min error but console has correct info
cameronjtoy Dec 5, 2023
7f34306
button changes
cameronjtoy Dec 5, 2023
65da900
scss changes
cameronjtoy Dec 6, 2023
37d5dce
no more empty min
cameronjtoy Dec 6, 2023
f169b10
working frontend
cameronjtoy Dec 6, 2023
ff030be
Update PlotUtils.scala
JasonMai11 Dec 6, 2023
65d0b74
Merge branch 'Vizier-profiler-implementation' into New-Interface
JasonMai11 Dec 6, 2023
b25fb10
Artifact changes
JasonMai11 Dec 6, 2023
c9aded4
working frontend
cameronjtoy Dec 7, 2023
4895727
slider and new scss
cameronjtoy Dec 8, 2023
baaeb9d
Bar Chart implementation
JasonMai11 Dec 8, 2023
9e14d40
Merge branch 'New-Interface' of https://github.com/VizierDB/vizier-sc…
JasonMai11 Dec 8, 2023
e1dc77a
Chart Plotting
JasonMai11 Dec 8, 2023
bd48fbd
Profile no longer double-nests keys.
okennedy Dec 8, 2023
055b116
Resetting logging of catalog.Artifact
okennedy Dec 8, 2023
0b1af5f
Bar Slider minior changes
cameronjtoy Dec 8, 2023
77a9900
#26 made changes towards filter parameter bug for numerical_id numbers
cameronjtoy Dec 10, 2023
9bb2264
#22 New scss changes
cameronjtoy Dec 10, 2023
e489e44
scss changes, filter update bug
cameronjtoy Dec 11, 2023
bba902e
Filter Parameter working and can plot
cameronjtoy Dec 11, 2023
891fff6
set method work
cameronjtoy Dec 11, 2023
5536edd
Bar Chart Grouping
JasonMai11 Dec 11, 2023
befb015
filter empty string
cameronjtoy Dec 11, 2023
c5e39c1
Streamline dataframe variable names (re: #297)
okennedy Dec 31, 2023
8196fcb
Infer clean names in load dataset (closes #297).
okennedy Dec 31, 2023
be40699
Typo in the Python Snippets.
okennedy Dec 31, 2023
bc7b39b
Bump version to RC3.
okennedy Dec 31, 2023
6cd2604
#268 updated jsass version
lyao4321 Feb 6, 2024
e91b9a1
Merge pull request #310 from VizierDB/jsass-version-change
okennedy Feb 9, 2024
56040e0
#12 - Single Slider functionality working with consistent profiler ap…
cameronjtoy Feb 13, 2024
c42779d
12 - Reactive Filtering Object to change input box
cameronjtoy Feb 18, 2024
842f850
closes #12 - Input Box and Filter changes based on dependency of the…
cameronjtoy Feb 18, 2024
35c24f8
re:#20 - Created class for color parameter with surface level html sh…
cameronjtoy Feb 28, 2024
57fc21b
#18 - flex additions to editor elements
eeeeemosewa Mar 1, 2024
320725d
re:#20 Color Parameter Created with 6 basic colors assigned by radio …
cameronjtoy Mar 1, 2024
4c4e28f
#18 - flex additions to table <th> elems
eeeeemosewa Mar 2, 2024
eaf6dbe
#18 - flex changes to parameter_list and all it's elements
eeeeemosewa Mar 2, 2024
cf07d3e
closes #18 - set width of last child of tr in param list to 0px
eeeeemosewa Mar 2, 2024
a1e8b6e
closes #18 - set width of last child of <td> and <th> in param list t…
eeeeemosewa Mar 2, 2024
1ce64bb
#23 added bg colors to radio buttons
eeeeemosewa Mar 4, 2024
86f706e
#18 added flex changes
eeeeemosewa Mar 4, 2024
c5aa442
closes #18 : added width to td elems
eeeeemosewa Mar 4, 2024
4a44c1f
#18 editor tbody not flex
eeeeemosewa Mar 5, 2024
d760e00
closes #18 : editor tbody not flex
eeeeemosewa Mar 5, 2024
caf96e8
#23 color radio buttons css
eeeeemosewa Mar 5, 2024
e552cac
#23 delimiter + color radio buttons css
eeeeemosewa Mar 5, 2024
f04d243
#23 select and hover changes color param
eeeeemosewa Mar 5, 2024
4d04fc5
#23 select and hover changes color para
eeeeemosewa Mar 5, 2024
63e66c2
#23 label input width set
eeeeemosewa Mar 5, 2024
4f25346
#23 radio buttons 15px
eeeeemosewa Mar 5, 2024
a2cba87
#23 checked css for radio button
eeeeemosewa Mar 6, 2024
01ef8eb
#23 checked radio button changes
eeeeemosewa Mar 6, 2024
ae00650
#23 label and span for color param
eeeeemosewa Mar 8, 2024
ffdb1c3
#23 label and span changes
eeeeemosewa Mar 8, 2024
6c90f8a
#23 label+span in color param
eeeeemosewa Mar 8, 2024
596a8e2
#23 label,span,input changes color param
eeeeemosewa Mar 8, 2024
f097a7e
#23 final span changes in color_param
eeeeemosewa Mar 8, 2024
b181447
#23 final changes to radio buttons
eeeeemosewa Mar 8, 2024
9902182
#23 check radio not working
eeeeemosewa Mar 8, 2024
a16adfa
#20 Add customized line details - New Editor Refactor Made into case …
cameronjtoy Mar 8, 2024
dc2b3c8
#20 Add customized line details - New Editor Refactor Made into case …
cameronjtoy Mar 8, 2024
be1f5d2
#20 Add customized line details - Dataset initialized as variable to …
cameronjtoy Mar 8, 2024
d3b8b54
added dataset summary information and ui component
lyao4321 Mar 8, 2024
bbe86d1
#20 Add customized line details - Encapsulated elements into tbody fo…
cameronjtoy Mar 8, 2024
072234b
#24 scss changes for new editor
eeeeemosewa Mar 8, 2024
44cb80c
#20 Add customized line details - Encapsulated side bar into Table
cameronjtoy Mar 8, 2024
b0f6506
Merge remote-tracking branch 'refs/remotes/origin/#20-Customized-line…
cameronjtoy Mar 8, 2024
b47de90
#24 table styling changes for sidemenu
eeeeemosewa Mar 9, 2024
eb5c5cc
cleaned code up and reworked summary button
lyao4321 Mar 10, 2024
6293806
merge into dev
cameronjtoy Mar 21, 2024
436e923
Merge with dev
cameronjtoy Mar 21, 2024
759a662
Merge remote-tracking branch 'origin/#22-profiler-dataset-info-UI' in…
cameronjtoy Mar 21, 2024
4822f9b
#28 Edit Chart Menu - add parameters and Bar Chart Editor
cameronjtoy Mar 26, 2024
af689d2
re: #27-Scatter-Plot-Editor - Migrated BarChartEditor to Editor Class…
cameronjtoy Mar 29, 2024
5d6dbf3
re:#27-Scatter-Plot-Editor - Got rid of Global Variables, Made One S…
cameronjtoy Apr 3, 2024
18e255e
#33 editor changes for scatterplot
eeeeemosewa Apr 5, 2024
82290a9
re: #31-Line-Chart-Editor - Line Chart Changes for Line Chart to work…
cameronjtoy Apr 11, 2024
6a5b463
re: #32-CDF-Chart-Editor - CDF Chart Editor posts onto the screen
cameronjtoy Apr 11, 2024
02e0b8b
#32 editor flex changes for CDF
eeeeemosewa Apr 12, 2024
c4f5b66
Merge remote-tracking branch 'origin/#32-CDF-Chart-Editor' into #28-E…
cameronjtoy Apr 15, 2024
68c8415
#28-Edit-Chart-Menu - Made UI changes to reflect figma design linked …
cameronjtoy Apr 15, 2024
78f22c4
#35 scss changes to match figma editor
eeeeemosewa Apr 16, 2024
2fb89e0
#35 scss scatterplot editor width change
eeeeemosewa Apr 16, 2024
d195ec9
#35 td elem alignment for line config
eeeeemosewa Apr 18, 2024
19e7491
#35 td elem alignment for line config
eeeeemosewa Apr 18, 2024
2995351
#35 td elem alignment for line config
eeeeemosewa Apr 18, 2024
6fea58b
#35 scss td elem alignment for line config
eeeeemosewa Apr 18, 2024
376a126
#35 scss delimiter error fixed
eeeeemosewa Apr 18, 2024
7d51535
#35 scss two td elem alignment line config
eeeeemosewa Apr 18, 2024
7b46a43
#35 scss only child changes line config align
eeeeemosewa Apr 18, 2024
10c6257
#35 scss input width reduced
eeeeemosewa Apr 18, 2024
428f935
#35 scss td width set back to 100%
eeeeemosewa Apr 18, 2024
f516b87
#28-Edit-Chart-Menu - One Line Congifuration button, Filter update
cameronjtoy Apr 19, 2024
e5ecaa2
#35 scss line and chart config
eeeeemosewa Apr 19, 2024
739aa51
#35 scss config button alignment
eeeeemosewa Apr 19, 2024
163b741
#35 scss line and chart config buttons
eeeeemosewa Apr 19, 2024
1f45812
#35 config button align and spacing
eeeeemosewa Apr 20, 2024
b2664e1
#35 config button align and spacing
eeeeemosewa Apr 20, 2024
f010c5a
#35 scss config buttons height change
eeeeemosewa Apr 20, 2024
c034124
#35 scss max width for drop downs
eeeeemosewa Apr 20, 2024
e37c39f
#35 scss component name error fix
eeeeemosewa Apr 20, 2024
1ab524a
#35 scss removed static space for config menu
eeeeemosewa Apr 20, 2024
d37d529
#28-Edit-Chart-Menu - Add a + button for the Ys, Add a + button for t…
cameronjtoy Apr 22, 2024
c72a9ef
#28-Edit-Chart-Menu - Populate the line config with one row per line …
cameronjtoy Apr 23, 2024
941ccf7
#35 scss add del y align
eeeeemosewa Apr 23, 2024
6d6fb5c
#35 scss config menu block align
eeeeemosewa Apr 23, 2024
49c343a
#35 scss margin changes
eeeeemosewa Apr 23, 2024
b80854e
#35 scss margin remove table elems
eeeeemosewa Apr 23, 2024
43c950a
#35 scss config 32px margin added
eeeeemosewa Apr 23, 2024
2d0e1c4
#35 scss margin for sidemenu div and table
eeeeemosewa Apr 23, 2024
40a479d
#35 scss table sidemenu 32px margin
eeeeemosewa Apr 23, 2024
bb9f75e
#35 scss y add del button
eeeeemosewa Apr 23, 2024
f157b74
#28-Edit-Chart-Menu - Adding dataset needs the box and headers removed
cameronjtoy Apr 24, 2024
51ba356
#28-Edit-Chart-Menu - added class names to add and delete buttons
cameronjtoy Apr 25, 2024
45ab8b3
#35 scss button changes
eeeeemosewa Apr 25, 2024
e178fda
#28-Edit-Chart-Menu - moved icons in front of text
cameronjtoy Apr 25, 2024
0892391
Merge branch '#28-Edit-Chart-Menu' of https://github.com/VizierDB/viz…
cameronjtoy Apr 25, 2024
33f38f9
#28-Edit-Chart-Menu - removed text from the buttons
cameronjtoy Apr 25, 2024
e18afd4
#35 scss remove - y button for first y
eeeeemosewa Apr 25, 2024
cde685f
#28-Edit-Chart-Menu - populating with multiple ys and datasets
cameronjtoy Apr 25, 2024
bfb8927
#28-Edit-Chart-Menu - added class names to add/delete row buttons
cameronjtoy Apr 26, 2024
85345dc
#35 scss to fix color param alignment
eeeeemosewa Apr 26, 2024
2130871
#35 scss filter slider min and max width
eeeeemosewa Apr 26, 2024
708f4a8
#35 scss command arg width changes
eeeeemosewa Apr 26, 2024
89b272b
#35 scss set parameter width to 90px
eeeeemosewa Apr 26, 2024
2300be5
#35 scss command arg width to 90px
eeeeemosewa Apr 26, 2024
61b56d6
#35 scss text input width to 82px
eeeeemosewa Apr 26, 2024
a4836ed
#35 scss hide del row button for first row
eeeeemosewa Apr 26, 2024
b9394dc
#35 scss hide del row button for first row
eeeeemosewa Apr 26, 2024
3c48d06
#28 - Delete .DS_Store
cameronjtoy May 6, 2024
15b43c0
#28 - Delete .scalafmt.conf
cameronjtoy May 6, 2024
7f13e1a
#28 - Migrated out Filter
cameronjtoy May 6, 2024
c51f611
#28 - Filter Parameter outside and has case class to differentiate ca…
cameronjtoy May 6, 2024
cd8d06b
#28 - color element fix
cameronjtoy May 6, 2024
14a5d9d
#35 scss sizing changes for filter input
eeeeemosewa May 7, 2024
f531578
#28 label and color addition change
eeeeemosewa May 7, 2024
6a06846
#28 Load State Fix for new editor
cameronjtoy May 7, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"files.watcherExclude": {
"**/target": true
}
}
4 changes: 2 additions & 2 deletions build.sc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import $ivy.`com.lihaoyi::mill-contrib-bloop:$MILL_VERSION`
import $ivy.`org.scala-js::scalajs-env-jsdom-nodejs:1.0.0`
import $ivy.`org.slf4j:slf4j-simple:1.6.1`
import $ivy.`io.bit3:jsass:5.10.4`
import $ivy.`io.bit3:jsass:5.11.0`
import mill._
import mill.scalalib._
import mill.scalalib.publish._
Expand All @@ -15,7 +15,7 @@ import java.util.Calendar
*** The Vizier Backend
*************************************************/
object vizier extends ScalaModule with PublishModule {
val VERSION = "2.0.0-rc2"
val VERSION = "2.0.0-rc3"
val PLAY_JS = ivy"com.typesafe.play::play-json::2.9.2"

val MIMIR_CAVEATS = ivy"info.vizierdb::mimir-caveats::0.3.6"
Expand Down
2 changes: 1 addition & 1 deletion scripts/bootstrap.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARTIFACT=info.vizierdb:vizier_2.12:2.0.0-rc2
ARTIFACT=info.vizierdb:vizier_2.12:2.0.0-rc3

coursier bootstrap $ARTIFACT\
-r https://s01.oss.sonatype.org/content/groups/public/ \
Expand Down
85 changes: 85 additions & 0 deletions test_data/1.01. Simple linear regression.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
SAT,GPA
1714,2.4
1664,2.52
1760,2.54
1685,2.74
1693,2.83
1670,2.91
1764,3
1764,3
1792,3.01
1850,3.01
1735,3.02
1775,3.07
1735,3.08
1712,3.08
1773,3.12
1872,3.17
1755,3.17
1674,3.17
1842,3.17
1786,3.19
1761,3.19
1722,3.19
1663,3.2
1687,3.21
1974,3.24
1826,3.28
1787,3.28
1821,3.28
2020,3.28
1794,3.28
1769,3.28
1934,3.28
1775,3.29
1855,3.29
1880,3.29
1849,3.31
1808,3.32
1954,3.34
1777,3.37
1831,3.37
1865,3.37
1850,3.38
1966,3.38
1702,3.39
1990,3.39
1925,3.4
1824,3.4
1956,3.4
1857,3.41
1979,3.41
1802,3.41
1855,3.42
1907,3.42
1634,3.42
1879,3.44
1887,3.47
1730,3.47
1953,3.47
1781,3.47
1891,3.48
1964,3.49
1808,3.49
1893,3.5
2041,3.51
1893,3.51
1832,3.52
1850,3.52
1934,3.54
1861,3.58
1931,3.58
1933,3.59
1778,3.59
1975,3.6
1934,3.6
2021,3.61
2015,3.62
1997,3.64
2020,3.65
1843,3.71
1936,3.71
1810,3.71
1987,3.73
1962,3.76
2050,3.81
26 changes: 26 additions & 0 deletions test_data/output_with_nulls.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
title,description,date,quantity
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
,,,
8 changes: 0 additions & 8 deletions vizier/backend/src/info/vizierdb/Vizier.scala
Original file line number Diff line number Diff line change
Expand Up @@ -167,14 +167,6 @@ object Vizier
}
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is a commit to the plotting tools making changes to Vizier.scala?

def setWorkingDirectory(): Unit =
{
if(config.workingDirectory.isDefined){
val path = new File(config.workingDirectory()).getAbsolutePath()
System.setProperty("user.dir", path)
}
}

def main(args: Array[String])
{
config = new Config(args)
Expand Down
11 changes: 6 additions & 5 deletions vizier/backend/src/info/vizierdb/api/GetArtifact.scala
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,9 @@ package info.vizierdb.api
import scalikejdbc._
import play.api.libs.json._
import org.apache.spark.sql.DataFrame

import play.api.libs.json.JsArray
import info.vizierdb.catalog.Artifact
import info.vizierdb.util.ExperimentalOptions
import info.vizierdb.types.{ Identifier, ArtifactType }
import org.mimirdb.caveats.Caveat
import info.vizierdb.spark.caveats.CaveatFormat._
Expand All @@ -36,12 +37,13 @@ object GetArtifact
extends LazyLogging
{
def getArtifact(projectId: Long, artifactId: Long, expecting: Option[ArtifactType.T]): Option[Artifact] =
CatalogDB.withDBReadOnly { implicit session =>
CatalogDB.withDB { implicit session =>
Artifact.getOption(artifactId, Some(projectId))
}.filter { artifact =>
expecting.isEmpty || expecting.get.equals(artifact.t)
}


def apply(
projectId: Identifier,
artifactId: Identifier,
Expand All @@ -58,7 +60,7 @@ object GetArtifact
val forceProfiler = profile.map { _.equals("true") }.getOrElse(false)
getArtifact(projectId, artifactId, expecting) match {
case Some(artifact) =>
CatalogDB.withDBReadOnly { implicit s =>
CatalogDB.withDB{ implicit s =>
artifact.describe(
offset = offset,
limit = limit,
Expand All @@ -77,7 +79,6 @@ object GetArtifact
ErrorResponse.noSuchEntity
}
}

def typed(
expectedType: ArtifactType.T
)(
Expand Down Expand Up @@ -135,7 +136,7 @@ object GetArtifact
{
getArtifact(projectId, artifactId, None) match {
case Some(artifact) =>
CatalogDB.withDBReadOnly { implicit s => artifact.summarize() }
CatalogDB.withDB { implicit s => artifact.summarize() }
case None =>
ErrorResponse.noSuchEntity
}
Expand Down
41 changes: 37 additions & 4 deletions vizier/backend/src/info/vizierdb/catalog/Artifact.scala
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import info.vizierdb.spark.SparkSchema.fieldFormat
import org.apache.spark.sql.AnalysisException
import com.typesafe.scalalogging.LazyLogging
import info.vizierdb.api.akka.VizierServer
import info.vizierdb.profiler.DataProfiler
import info.vizierdb.util.ExperimentalOptions

case class Artifact(
Expand Down Expand Up @@ -183,12 +184,20 @@ case class Artifact(

val df = dataframe

logger.trace("Dataset Properties: \n"+string)

{ () =>
val data = dataConstructor()
val data = dataConstructor()
val rowCount: Long =
data.properties
.get("count")
.map { _.as[Long] }
data.properties
.get("count")
.flatMap { values =>
try {
Some(values.as[Long])
} catch {
case e: Exception => None
}
}
.getOrElse { df().count() }

Artifact.translateDatasetContainerToVizierClassic(
Expand Down Expand Up @@ -251,6 +260,29 @@ case class Artifact(
)
val computeCaveats =
ExperimentalOptions.isEnabled("ENABLE-MIMIR") && includeCaveats

val df = dataframe(session)()
if (forceProfiler) {
val updatedProperties = datasetDescriptor.properties.get("is_profiled") match {
case Some(JsBoolean(true)) =>
// profiler has been generated so do nothing
case _ =>
println("Profiler has been generated")
// run the profiler
val dataProfile: Map[String, JsValue] = DataProfiler.apply(df)
// Transform the dataProfile into a sequence of tuples
// Filter out the specified keys and transform the remaining dataProfile into a sequence of tuples
val dynamicProperties: Seq[(String, JsValue)] = dataProfile
.filterKeys(key => key != "is_profiled")
.toSeq
// Combine the static properties with the dynamic ones
updateDatasetProperties(
Seq("is_profiled" -> JsBoolean(true)) ++ dynamicProperties: _*
)
}
}


return { () =>
try {
QueryWithCaveats(
Expand Down Expand Up @@ -291,6 +323,7 @@ case class Artifact(
datasetDescriptor.properties.get(name)
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spurious extra space?


/**
* Retrieve or construct the specified dataset property.
* @param name The name of a dataset property.
Expand Down
4 changes: 2 additions & 2 deletions vizier/backend/src/info/vizierdb/commands/Commands.scala
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,10 @@ object Commands
register(packageId = "plot", name = "Data Plotting", category = "plot")(
"chart" -> info.vizierdb.commands.plot.SimpleChart,
"line-chart" -> info.vizierdb.commands.plot.LineChart,
"scatterplot" -> info.vizierdb.commands.plot.ScatterPlot,
"scatterplot" -> info.vizierdb.commands.plot.ScatterPlot,
"cdf" -> info.vizierdb.commands.plot.CDFPlot,
"geo" -> info.vizierdb.commands.plot.GeoPlot,
"bar-chart" -> info.vizierdb.commands.plot.BarChart,
"barchart" -> info.vizierdb.commands.plot.BarChart,
)

register(packageId = "sql", name = "SQL", category = "code")(
Expand Down
Loading