Color Palette Set Up
- Added two new color palette related functions:
- TADA_ColorPalette - creates colorblind accessible palette for use in TADA visualizations
- TADA_ViewColorPalette - view palette color swatches with labels identifying their position in palette and hex code for easier future development (or if users want to design additional figures with a similar look)
- Applied the new palette to the following functions:
- TADA_Boxplot
- TADA_Histogram
- TADA_OverviewMap
- TADA_FieldValuesPieChart
- TADA_Scatterplot
- TADA_TwoCharacteristicScatterplot
We may want to discuss some additional options for TADA_FieldValuesPieChart as the number of colors required can exceed the number in the palette (n = 9). Right now I am using color ramp to generate additional colors, but it doesn't always look great. Might be worth adding some additional colors to the palette in TADA_ColorPalette? And then only using color ramp if a really large number of colors is needed?
Merged depth profile functions with color palette setup. Depth profile functions include: TADA_IDDepthProfile, TADA_DepthProfilePlot, TADA_DepthCategory.Flag
@cristinamullin - this is ready for your review
@hillarymarler I tried running TADA_DepthProfilePlot with the surfacevalue and bottomvalue null which currently produces as error message. Recommendation: update this so that when these inputs are null, the function returns the figure without the black horizontal lines and text on the figure marking surface, middle, and bottom.
> TADA_DepthProfilePlot(Data_6Tribes_5y_Harmonized,
+ groups = c("TEMPERATURE_NA_NA_DEG C", "PH_NA_NA_NA", "DEPTH, SECCHI DISK DEPTH_NA_NA_M"),
+ location = "REDLAKE_WQX-ANKE",
+ activity_date = "2018-10-04",
+ surfacevalue = NULL,
+ bottomvalue = NULL)
[1] "TADA_DepthProfilePlot: Running TADA_DepthCategoryFlag function to add required columns to data frame"
[1] "TADA_DepthCategory.Flag: checking data set for depth values. 69516 results have depth values available."
[1] "TADA_DepthCategory.Flag: assigning depth categories."
[1] "TADA_DepthCategory.Flag: Grouping results by MonitoringLocationIdentifier, OrganizationIdentifier, CharacteristicName, and ActivityStartDate for aggregation for entire water column."
[1] "TADA_DepthCategory.Flag: No aggregation performed."
[1] "TADA_DepthProfilePlot: Depth unit in data set matches depth unit specified by user for plot. No conversion necessary."
[1] "TADA_DepthProfilePlot: Identifying available depth profile data."
[1] "TADA_DepthProfilePlot: Any results for DEPTH, SECCHI DISK DEPTH, DEPTH, SECCHI DISK DEPTH (CHOICE LIST), DEPTH, SECCHI DISK DEPTH REAPPEARS, DEPTH, DATA-LOGGER (NON-PORTED), DEPTH, DATA-LOGGER (PORTED), RBP STREAM DEPTH - RIFFLE, RBP STREAM DEPTH - RUN, THALWEG DEPTH match the depth unit selected for the figure."
Joining with `by = join_by(ActivityTypeCode, TADA.ActivityType.Flag, ActivityMediaName, TADA.ActivityMediaName,
ActivityMediaSubdivisionName, ResultSampleFractionText, TADA.ResultSampleFractionText, TADA.SampleFraction.Flag,
TADA.FractionAssumptions, CharacteristicName, TADA.CharacteristicName, TADA.CharacteristicNameAssumptions, SubjectTaxonomicName,
SampleTissueAnatomyName, MethodSpeciationName, TADA.MethodSpeciationName, TADA.MethodSpeciation.Flag,
TADA.SpeciationAssumptions, TADA.ComparableDataIdentifier, TADA.Harmonized.Flag, ActivityStartDate, ActivityStartTime.Time,
ActivityStartTime.TimeZoneCode, ActivityStartDateTime, ResultMeasureValue, TADA.ResultMeasureValue,
TADA.ResultMeasureValueDataTypes.Flag, ResultValueTypeName, TADA.ResultValueAboveUpperThreshold.Flag,
TADA.ResultValueBelowLowerThreshold.Flag, ResultMeasure.MeasureUnitCode, TADA.ResultMeasure.MeasureUnitCode,
TADA.WQXResultUnitConversion, TADA.ResultUnit.Flag, ResultDetectionConditionText, DetectionQuantitationLimitTypeName,
DetectionQuantitationLimitMeasure.MeasureValue, TADA.DetectionQuantitationLimitMeasure.MeasureValue,
TADA.DetectionQuantitationLimitMeasure.MeasureValueDataTypes.Flag, DetectionQuantitationLimitMeasure.MeasureUnitCode,
TADA.DetectionQuantitationLimitMeasure.MeasureUnitCode, TADA.CensoredData.Flag, TADA.CensoredMethod, TADA.ConsolidatedDepth,
TADA.ConsolidatedDepth.Unit, ResultDepthHeightMeasure.MeasureValue, TADA.ResultDepthHeightMeasure.MeasureValue,
TADA.ResultDepthHeightMeasure.MeasureValueDataTypes.Flag, ResultDepthHeightMeasure.MeasureUnitCode,
TADA.ResultDepthHeightMeasure.MeasureUnitCode, ResultDepthAltitudeReferencePointText, ActivityRelativeDepthName,
ActivityDepthHeightMeasure.MeasureValue, TADA.ActivityDepthHeightMeasure.MeasureValue,
TADA.ActivityDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityDepthHeightMeasure.MeasureUnitCode,
TADA.ActivityDepthHeightMeasure.MeasureUnitCode, ActivityTopDepthHeightMeasure.MeasureValue,
TADA.ActivityTopDepthHeightMeasure.MeasureValue, TADA.ActivityTopDepthHeightMeasure.MeasureValueDataTypes.Flag,
ActivityTopDepthHeightMeasure.MeasureUnitCode, TADA.ActivityTopDepthHeightMeasure.MeasureUnitCode,
ActivityBottomDepthHeightMeasure.MeasureValue, TADA.ActivityBottomDepthHeightMeasure.MeasureValue,
TADA.ActivityBottomDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityBottomDepthHeightMeasure.MeasureUnitCode,
TADA.ActivityBottomDepthHeightMeasure.MeasureUnitCode, ResultTimeBasisText, StatisticalBaseCode, ResultFileUrl,
ResultAnalyticalMethod.MethodName, ResultAnalyticalMethod.MethodDescriptionText, ResultAnalyticalMethod.MethodIdentifier,
ResultAnalyticalMethod.MethodIdentifierContext, ResultAnalyticalMethod.MethodUrl, TADA.AnalyticalMethod.Flag,
SampleCollectionMethod.MethodIdentifier, SampleCollectionMethod.MethodIdentifierContext, SampleCollectionMethod.MethodName,
SampleCollectionMethod.MethodDescriptionText, SampleCollectionEquipmentName, MeasureQualifierCode,
TADA.MeasureQualifierCode.Flag, TADA.MeasureQualifierCode.Def, ResultCommentText, ActivityCommentText, HydrologicCondition,
HydrologicEvent, DataQuality.PrecisionValue, DataQuality.BiasValue, DataQuality.ConfidenceIntervalValue,
DataQuality.UpperConfidenceLimitValue, DataQuality.LowerConfidenceLimitValue, SamplingDesignTypeCode, LaboratoryName,
ResultLaboratoryCommentText, ResultIdentifier, ActivityIdentifier, OrganizationIdentifier, OrganizationFormalName,
TADA.MultipleOrgDuplicate, TADA.MultipleOrgDupGroupID, TADA.ResultSelectedMultipleOrgs, TADA.SingleOrgDupGroupID,
TADA.SingleOrgDup.Flag, ProjectName, ProjectDescriptionText, ProjectIdentifier, ProjectFileUrl, QAPPApprovedIndicator,
QAPPApprovalAgencyName, CountryCode, StateCode, CountyCode, MonitoringLocationName, MonitoringLocationTypeName,
MonitoringLocationDescriptionText, LatitudeMeasure, TADA.LatitudeMeasure, LongitudeMeasure, TADA.LongitudeMeasure,
HorizontalCoordinateReferenceSystemDatumName, HUCEightDigitCode, MonitoringLocationIdentifier, TADA.NearbySiteGroups,
AquiferName, AquiferTypeName, LocalAqfrName, ConstructionDateText, WellDepthMeasure.MeasureValue,
WellDepthMeasure.MeasureUnitCode, WellHoleDepthMeasure.MeasureValue, WellHoleDepthMeasure.MeasureUnitCode,
ActivityDepthAltitudeReferencePointText, ActivityEndDate, ActivityEndTime.Time, ActivityEndTime.TimeZoneCode,
ActivityEndDateTime, ActivityConductingOrganizationText, SampleAquifer, ActivityLocation.LatitudeMeasure,
ActivityLocation.LongitudeMeasure, ResultStatusIdentifier, ResultWeightBasisText, ResultTemperatureBasisText,
ResultParticleSizeBasisText, USGSPCode, BinaryObjectFileName, BinaryObjectFileTypeCode, AnalysisStartDate,
ResultDetectionQuantitationLimitUrl, LabSamplePreparationUrl, timeZoneStart, timeZoneEnd, SourceMapScaleNumeric,
HorizontalAccuracyMeasure.MeasureValue, HorizontalAccuracyMeasure.MeasureUnitCode, HorizontalCollectionMethodName,
VerticalMeasure.MeasureValue, VerticalMeasure.MeasureUnitCode, VerticalAccuracyMeasure.MeasureValue,
VerticalAccuracyMeasure.MeasureUnitCode, VerticalCollectionMethodName, VerticalCoordinateReferenceSystemDatumName,
FormationTypeText, ProjectMonitoringLocationWeightingUrl, DrainageAreaMeasure.MeasureValue, DrainageAreaMeasure.MeasureUnitCode,
ContributingDrainageAreaMeasure.MeasureValue, ContributingDrainageAreaMeasure.MeasureUnitCode, ProviderName, LastUpdated,
TADA.ConsolidatedDepth.Bottom, TADA.DepthCategory.Flag, TADA.DepthProfileAggregation.Flag)`
[1] "TADA_DepthProfilePlot: Adding surface delination to figure."
Error: Must supply `x` and `y` attributes
@cristinamullin - thanks for catching that. I like your proposed solution and will make those updates.
@hillarymarler I noticed that the new columns generated by some of the depth functions are appended to the end of the dataframe (TADA.ConsolidatedDpeth.Bottom, TADA.DepthCategory.Flag, TADA.DepthProfileAggregation.Flag & there may be more). Can you add any new columns that are created to the require.cols list at the top of RequiredCols.R. It looks like a few are there already under the ActivityDepth or ResultDepth sections but not all.
@hillarymarler I like your idea for addressing the pie chart colors: "adding some additional colors to the palette in TADA_ColorPalette and then only using color ramp if a really large number of colors is needed". Do you want to create a separate issue for that or include in this PR?
Recommendations for figure/map colors:
-
The orange outline for sites in the TADA_OverviewMap is a bit faint/hard to see. Should we use the same dark blue outline for the sites that is used for TADA_Scatterplot point outlines (is that #6 in the TADA palette)?
-
In TADA_TwoCharacteristicScatterplot the second char points are orange with a blue outline. Could these have a darker orange outline instead? So the inside would be #2 in the TADA palette and outline would be #7?
-
TADA_FieldValuesPie. For figures like this that use a lot of colors, I am wondering if the TADA_ColorPalette could specify by default which colors to use first and in which order? For example, if we always want to use #3 blue first followed by #2 orange) can that specification be included in TADA_ColorPalette?
My thoughts so far:
...new columns generated by some of the depth functions are appended to the end of the dataframe (TADA.ConsolidatedDpeth.Bottom, TADA.DepthCategory.Flag, TADA.DepthProfileAggregation.Flag & there may be more). Can you add any new columns that are created to the require.cols list at the top of RequiredCols.R.
Yes I will add those to require.cols in RequiredCols.R
"adding some additional colors to the palette in TADA_ColorPalette and then only using color ramp if a really large number of colors is needed". Do you want to create a separate issue for that or include in this PR?
This is not difficult technically, but I will do that separately as I will need seem time to figure out which colors to add so that the palette remains colorblind accessible
- The orange outline for sites in the TADA_OverviewMap is a bit faint/hard to see. Should we use the same dark blue outline for the sites that is used for TADA_Scatterplot point outlines
Yes, I'll change this
- In TADA_TwoCharacteristicScatterplot the second char points are orange with a blue outline. Could these have a darker orange outline instead? So the inside would be Created TADA_AutoClean.R #2 in the TADA palette and outline would be [7]
Yes, I'll change this
- TADA_FieldValuesPie. For figures like this that use a lot of colors, I am wondering if the TADA_ColorPalette could specify by default which colors to use first and in which order? For example, if we always want to use blue first followed by orange) can that specification be included in TADA_ColorPalette?
I have noticed that the order of the colors in the palette does not seem to determine which colors are selected first in TAD_FieldValuesPie. I think we should specify the order we want the colors used in, but it may need to happen within the plotly functions used to create the figure. I think there is a way to tell it to use the colors in order from the palette or specify the order within the function. I'll take a look at this and figure out the best place to do it.
@hillarymarler I tried running TADA_DepthProfilePlot with the surfacevalue and bottomvalue null which currently produces as error message. Recommendation: update this so that when these inputs are null, the function returns the figure without the black horizontal lines and text on the figure marking surface, middle, and bottom.
> TADA_DepthProfilePlot(Data_6Tribes_5y_Harmonized, + groups = c("TEMPERATURE_NA_NA_DEG C", "PH_NA_NA_NA", "DEPTH, SECCHI DISK DEPTH_NA_NA_M"), + location = "REDLAKE_WQX-ANKE", + activity_date = "2018-10-04", + surfacevalue = NULL, + bottomvalue = NULL) [1] "TADA_DepthProfilePlot: Running TADA_DepthCategoryFlag function to add required columns to data frame" [1] "TADA_DepthCategory.Flag: checking data set for depth values. 69516 results have depth values available." [1] "TADA_DepthCategory.Flag: assigning depth categories." [1] "TADA_DepthCategory.Flag: Grouping results by MonitoringLocationIdentifier, OrganizationIdentifier, CharacteristicName, and ActivityStartDate for aggregation for entire water column." [1] "TADA_DepthCategory.Flag: No aggregation performed." [1] "TADA_DepthProfilePlot: Depth unit in data set matches depth unit specified by user for plot. No conversion necessary." [1] "TADA_DepthProfilePlot: Identifying available depth profile data." [1] "TADA_DepthProfilePlot: Any results for DEPTH, SECCHI DISK DEPTH, DEPTH, SECCHI DISK DEPTH (CHOICE LIST), DEPTH, SECCHI DISK DEPTH REAPPEARS, DEPTH, DATA-LOGGER (NON-PORTED), DEPTH, DATA-LOGGER (PORTED), RBP STREAM DEPTH - RIFFLE, RBP STREAM DEPTH - RUN, THALWEG DEPTH match the depth unit selected for the figure." Joining with `by = join_by(ActivityTypeCode, TADA.ActivityType.Flag, ActivityMediaName, TADA.ActivityMediaName, ActivityMediaSubdivisionName, ResultSampleFractionText, TADA.ResultSampleFractionText, TADA.SampleFraction.Flag, TADA.FractionAssumptions, CharacteristicName, TADA.CharacteristicName, TADA.CharacteristicNameAssumptions, SubjectTaxonomicName, SampleTissueAnatomyName, MethodSpeciationName, TADA.MethodSpeciationName, TADA.MethodSpeciation.Flag, TADA.SpeciationAssumptions, TADA.ComparableDataIdentifier, TADA.Harmonized.Flag, ActivityStartDate, ActivityStartTime.Time, ActivityStartTime.TimeZoneCode, ActivityStartDateTime, ResultMeasureValue, TADA.ResultMeasureValue, TADA.ResultMeasureValueDataTypes.Flag, ResultValueTypeName, TADA.ResultValueAboveUpperThreshold.Flag, TADA.ResultValueBelowLowerThreshold.Flag, ResultMeasure.MeasureUnitCode, TADA.ResultMeasure.MeasureUnitCode, TADA.WQXResultUnitConversion, TADA.ResultUnit.Flag, ResultDetectionConditionText, DetectionQuantitationLimitTypeName, DetectionQuantitationLimitMeasure.MeasureValue, TADA.DetectionQuantitationLimitMeasure.MeasureValue, TADA.DetectionQuantitationLimitMeasure.MeasureValueDataTypes.Flag, DetectionQuantitationLimitMeasure.MeasureUnitCode, TADA.DetectionQuantitationLimitMeasure.MeasureUnitCode, TADA.CensoredData.Flag, TADA.CensoredMethod, TADA.ConsolidatedDepth, TADA.ConsolidatedDepth.Unit, ResultDepthHeightMeasure.MeasureValue, TADA.ResultDepthHeightMeasure.MeasureValue, TADA.ResultDepthHeightMeasure.MeasureValueDataTypes.Flag, ResultDepthHeightMeasure.MeasureUnitCode, TADA.ResultDepthHeightMeasure.MeasureUnitCode, ResultDepthAltitudeReferencePointText, ActivityRelativeDepthName, ActivityDepthHeightMeasure.MeasureValue, TADA.ActivityDepthHeightMeasure.MeasureValue, TADA.ActivityDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityDepthHeightMeasure.MeasureUnitCode, TADA.ActivityDepthHeightMeasure.MeasureUnitCode, ActivityTopDepthHeightMeasure.MeasureValue, TADA.ActivityTopDepthHeightMeasure.MeasureValue, TADA.ActivityTopDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityTopDepthHeightMeasure.MeasureUnitCode, TADA.ActivityTopDepthHeightMeasure.MeasureUnitCode, ActivityBottomDepthHeightMeasure.MeasureValue, TADA.ActivityBottomDepthHeightMeasure.MeasureValue, TADA.ActivityBottomDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityBottomDepthHeightMeasure.MeasureUnitCode, TADA.ActivityBottomDepthHeightMeasure.MeasureUnitCode, ResultTimeBasisText, StatisticalBaseCode, ResultFileUrl, ResultAnalyticalMethod.MethodName, ResultAnalyticalMethod.MethodDescriptionText, ResultAnalyticalMethod.MethodIdentifier, ResultAnalyticalMethod.MethodIdentifierContext, ResultAnalyticalMethod.MethodUrl, TADA.AnalyticalMethod.Flag, SampleCollectionMethod.MethodIdentifier, SampleCollectionMethod.MethodIdentifierContext, SampleCollectionMethod.MethodName, SampleCollectionMethod.MethodDescriptionText, SampleCollectionEquipmentName, MeasureQualifierCode, TADA.MeasureQualifierCode.Flag, TADA.MeasureQualifierCode.Def, ResultCommentText, ActivityCommentText, HydrologicCondition, HydrologicEvent, DataQuality.PrecisionValue, DataQuality.BiasValue, DataQuality.ConfidenceIntervalValue, DataQuality.UpperConfidenceLimitValue, DataQuality.LowerConfidenceLimitValue, SamplingDesignTypeCode, LaboratoryName, ResultLaboratoryCommentText, ResultIdentifier, ActivityIdentifier, OrganizationIdentifier, OrganizationFormalName, TADA.MultipleOrgDuplicate, TADA.MultipleOrgDupGroupID, TADA.ResultSelectedMultipleOrgs, TADA.SingleOrgDupGroupID, TADA.SingleOrgDup.Flag, ProjectName, ProjectDescriptionText, ProjectIdentifier, ProjectFileUrl, QAPPApprovedIndicator, QAPPApprovalAgencyName, CountryCode, StateCode, CountyCode, MonitoringLocationName, MonitoringLocationTypeName, MonitoringLocationDescriptionText, LatitudeMeasure, TADA.LatitudeMeasure, LongitudeMeasure, TADA.LongitudeMeasure, HorizontalCoordinateReferenceSystemDatumName, HUCEightDigitCode, MonitoringLocationIdentifier, TADA.NearbySiteGroups, AquiferName, AquiferTypeName, LocalAqfrName, ConstructionDateText, WellDepthMeasure.MeasureValue, WellDepthMeasure.MeasureUnitCode, WellHoleDepthMeasure.MeasureValue, WellHoleDepthMeasure.MeasureUnitCode, ActivityDepthAltitudeReferencePointText, ActivityEndDate, ActivityEndTime.Time, ActivityEndTime.TimeZoneCode, ActivityEndDateTime, ActivityConductingOrganizationText, SampleAquifer, ActivityLocation.LatitudeMeasure, ActivityLocation.LongitudeMeasure, ResultStatusIdentifier, ResultWeightBasisText, ResultTemperatureBasisText, ResultParticleSizeBasisText, USGSPCode, BinaryObjectFileName, BinaryObjectFileTypeCode, AnalysisStartDate, ResultDetectionQuantitationLimitUrl, LabSamplePreparationUrl, timeZoneStart, timeZoneEnd, SourceMapScaleNumeric, HorizontalAccuracyMeasure.MeasureValue, HorizontalAccuracyMeasure.MeasureUnitCode, HorizontalCollectionMethodName, VerticalMeasure.MeasureValue, VerticalMeasure.MeasureUnitCode, VerticalAccuracyMeasure.MeasureValue, VerticalAccuracyMeasure.MeasureUnitCode, VerticalCollectionMethodName, VerticalCoordinateReferenceSystemDatumName, FormationTypeText, ProjectMonitoringLocationWeightingUrl, DrainageAreaMeasure.MeasureValue, DrainageAreaMeasure.MeasureUnitCode, ContributingDrainageAreaMeasure.MeasureValue, ContributingDrainageAreaMeasure.MeasureUnitCode, ProviderName, LastUpdated, TADA.ConsolidatedDepth.Bottom, TADA.DepthCategory.Flag, TADA.DepthProfileAggregation.Flag)` [1] "TADA_DepthProfilePlot: Adding surface delination to figure." Error: Must supply `x` and `y` attributes
@cristinamullin should "null" be the default for surfacevalue and bottomvalue in this function?
I like what you have now (consistent with the default used to the categories) but null would work too.
From: hillarymarler @.> Sent: Thursday, May 23, 2024 3:23 PM To: USEPA/TADA @.> Cc: Mullin, Cristina (she/her/hers) @.>; Mention @.> Subject: Re: [USEPA/TADA] Color Palette Set Up (PR #462)
Caution: This email originated from outside EPA, please exercise additional caution when deciding whether to open attachments or click on provided links.
@hillarymarlerhttps://github.com/hillarymarler I tried running TADA_DepthProfilePlot with the surfacevalue and bottomvalue null which currently produces as error message. Recommendation: update this so that when these inputs are null, the function returns the figure without the black horizontal lines and text on the figure marking surface, middle, and bottom.
TADA_DepthProfilePlot(Data_6Tribes_5y_Harmonized,
-
groups = c("TEMPERATURE_NA_NA_DEG C", "PH_NA_NA_NA", "DEPTH, SECCHI DISK DEPTH_NA_NA_M"), -
location = "REDLAKE_WQX-ANKE", -
activity_date = "2018-10-04", -
surfacevalue = NULL, -
bottomvalue = NULL)
[1] "TADA_DepthProfilePlot: Running TADA_DepthCategoryFlag function to add required columns to data frame"
[1] "TADA_DepthCategory.Flag: checking data set for depth values. 69516 results have depth values available."
[1] "TADA_DepthCategory.Flag: assigning depth categories."
[1] "TADA_DepthCategory.Flag: Grouping results by MonitoringLocationIdentifier, OrganizationIdentifier, CharacteristicName, and ActivityStartDate for aggregation for entire water column."
[1] "TADA_DepthCategory.Flag: No aggregation performed."
[1] "TADA_DepthProfilePlot: Depth unit in data set matches depth unit specified by user for plot. No conversion necessary."
[1] "TADA_DepthProfilePlot: Identifying available depth profile data."
[1] "TADA_DepthProfilePlot: Any results for DEPTH, SECCHI DISK DEPTH, DEPTH, SECCHI DISK DEPTH (CHOICE LIST), DEPTH, SECCHI DISK DEPTH REAPPEARS, DEPTH, DATA-LOGGER (NON-PORTED), DEPTH, DATA-LOGGER (PORTED), RBP STREAM DEPTH - RIFFLE, RBP STREAM DEPTH - RUN, THALWEG DEPTH match the depth unit selected for the figure."
Joining with `by = join_by(ActivityTypeCode, TADA.ActivityType.Flag, ActivityMediaName, TADA.ActivityMediaName,
ActivityMediaSubdivisionName, ResultSampleFractionText, TADA.ResultSampleFractionText, TADA.SampleFraction.Flag,
TADA.FractionAssumptions, CharacteristicName, TADA.CharacteristicName, TADA.CharacteristicNameAssumptions, SubjectTaxonomicName,
SampleTissueAnatomyName, MethodSpeciationName, TADA.MethodSpeciationName, TADA.MethodSpeciation.Flag,
TADA.SpeciationAssumptions, TADA.ComparableDataIdentifier, TADA.Harmonized.Flag, ActivityStartDate, ActivityStartTime.Time,
ActivityStartTime.TimeZoneCode, ActivityStartDateTime, ResultMeasureValue, TADA.ResultMeasureValue,
TADA.ResultMeasureValueDataTypes.Flag, ResultValueTypeName, TADA.ResultValueAboveUpperThreshold.Flag,
TADA.ResultValueBelowLowerThreshold.Flag, ResultMeasure.MeasureUnitCode, TADA.ResultMeasure.MeasureUnitCode,
TADA.WQXResultUnitConversion, TADA.ResultUnit.Flag, ResultDetectionConditionText, DetectionQuantitationLimitTypeName,
DetectionQuantitationLimitMeasure.MeasureValue, TADA.DetectionQuantitationLimitMeasure.MeasureValue,
TADA.DetectionQuantitationLimitMeasure.MeasureValueDataTypes.Flag, DetectionQuantitationLimitMeasure.MeasureUnitCode,
TADA.DetectionQuantitationLimitMeasure.MeasureUnitCode, TADA.CensoredData.Flag, TADA.CensoredMethod, TADA.ConsolidatedDepth,
TADA.ConsolidatedDepth.Unit, ResultDepthHeightMeasure.MeasureValue, TADA.ResultDepthHeightMeasure.MeasureValue,
TADA.ResultDepthHeightMeasure.MeasureValueDataTypes.Flag, ResultDepthHeightMeasure.MeasureUnitCode,
TADA.ResultDepthHeightMeasure.MeasureUnitCode, ResultDepthAltitudeReferencePointText, ActivityRelativeDepthName,
ActivityDepthHeightMeasure.MeasureValue, TADA.ActivityDepthHeightMeasure.MeasureValue,
TADA.ActivityDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityDepthHeightMeasure.MeasureUnitCode,
TADA.ActivityDepthHeightMeasure.MeasureUnitCode, ActivityTopDepthHeightMeasure.MeasureValue,
TADA.ActivityTopDepthHeightMeasure.MeasureValue, TADA.ActivityTopDepthHeightMeasure.MeasureValueDataTypes.Flag,
ActivityTopDepthHeightMeasure.MeasureUnitCode, TADA.ActivityTopDepthHeightMeasure.MeasureUnitCode,
ActivityBottomDepthHeightMeasure.MeasureValue, TADA.ActivityBottomDepthHeightMeasure.MeasureValue,
TADA.ActivityBottomDepthHeightMeasure.MeasureValueDataTypes.Flag, ActivityBottomDepthHeightMeasure.MeasureUnitCode,
TADA.ActivityBottomDepthHeightMeasure.MeasureUnitCode, ResultTimeBasisText, StatisticalBaseCode, ResultFileUrl,
ResultAnalyticalMethod.MethodName, ResultAnalyticalMethod.MethodDescriptionText, ResultAnalyticalMethod.MethodIdentifier,
ResultAnalyticalMethod.MethodIdentifierContext, ResultAnalyticalMethod.MethodUrl, TADA.AnalyticalMethod.Flag,
SampleCollectionMethod.MethodIdentifier, SampleCollectionMethod.MethodIdentifierContext, SampleCollectionMethod.MethodName,
SampleCollectionMethod.MethodDescriptionText, SampleCollectionEquipmentName, MeasureQualifierCode,
TADA.MeasureQualifierCode.Flag, TADA.MeasureQualifierCode.Def, ResultCommentText, ActivityCommentText, HydrologicCondition,
HydrologicEvent, DataQuality.PrecisionValue, DataQuality.BiasValue, DataQuality.ConfidenceIntervalValue,
DataQuality.UpperConfidenceLimitValue, DataQuality.LowerConfidenceLimitValue, SamplingDesignTypeCode, LaboratoryName,
ResultLaboratoryCommentText, ResultIdentifier, ActivityIdentifier, OrganizationIdentifier, OrganizationFormalName,
TADA.MultipleOrgDuplicate, TADA.MultipleOrgDupGroupID, TADA.ResultSelectedMultipleOrgs, TADA.SingleOrgDupGroupID,
TADA.SingleOrgDup.Flag, ProjectName, ProjectDescriptionText, ProjectIdentifier, ProjectFileUrl, QAPPApprovedIndicator,
QAPPApprovalAgencyName, CountryCode, StateCode, CountyCode, MonitoringLocationName, MonitoringLocationTypeName,
MonitoringLocationDescriptionText, LatitudeMeasure, TADA.LatitudeMeasure, LongitudeMeasure, TADA.LongitudeMeasure,
HorizontalCoordinateReferenceSystemDatumName, HUCEightDigitCode, MonitoringLocationIdentifier, TADA.NearbySiteGroups,
AquiferName, AquiferTypeName, LocalAqfrName, ConstructionDateText, WellDepthMeasure.MeasureValue,
WellDepthMeasure.MeasureUnitCode, WellHoleDepthMeasure.MeasureValue, WellHoleDepthMeasure.MeasureUnitCode,
ActivityDepthAltitudeReferencePointText, ActivityEndDate, ActivityEndTime.Time, ActivityEndTime.TimeZoneCode,
ActivityEndDateTime, ActivityConductingOrganizationText, SampleAquifer, ActivityLocation.LatitudeMeasure,
ActivityLocation.LongitudeMeasure, ResultStatusIdentifier, ResultWeightBasisText, ResultTemperatureBasisText,
ResultParticleSizeBasisText, USGSPCode, BinaryObjectFileName, BinaryObjectFileTypeCode, AnalysisStartDate,
ResultDetectionQuantitationLimitUrl, LabSamplePreparationUrl, timeZoneStart, timeZoneEnd, SourceMapScaleNumeric,
HorizontalAccuracyMeasure.MeasureValue, HorizontalAccuracyMeasure.MeasureUnitCode, HorizontalCollectionMethodName,
VerticalMeasure.MeasureValue, VerticalMeasure.MeasureUnitCode, VerticalAccuracyMeasure.MeasureValue,
VerticalAccuracyMeasure.MeasureUnitCode, VerticalCollectionMethodName, VerticalCoordinateReferenceSystemDatumName,
FormationTypeText, ProjectMonitoringLocationWeightingUrl, DrainageAreaMeasure.MeasureValue, DrainageAreaMeasure.MeasureUnitCode,
ContributingDrainageAreaMeasure.MeasureValue, ContributingDrainageAreaMeasure.MeasureUnitCode, ProviderName, LastUpdated,
TADA.ConsolidatedDepth.Bottom, TADA.DepthCategory.Flag, TADA.DepthProfileAggregation.Flag)`
[1] "TADA_DepthProfilePlot: Adding surface delination to figure."
Error: Must supply x and y attributes
@cristinamullinhttps://github.com/cristinamullin should "null" be the default for surfacevalue and bottomvalue in this function?
Reply to this email directly, view it on GitHubhttps://github.com/USEPA/TADA/pull/462#issuecomment-2127871948, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ALGLGYCRFU3QVLH6AI6F7U3ZDY62VAVCNFSM6AAAAABH4TNKAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRXHA3TCOJUHA. You are receiving this because you were mentioned.Message ID: @.@.>>
@cristinamullin - ready for review