cerner / terra-graphs

A lightweight, JavaScript visualization API built using D3. Includes a vanilla javascript and react implementation.
Apache License 2.0
7 stars 6 forks source link

Carbon Gantt minimum chunk width not honored unless start/end dates are identical #141

Open Matthematic opened 3 years ago

Matthematic commented 3 years ago

Bug Report

Description

We have received a complaint from a client about tasks being drawn extremely skinny: image

Looking into this, I found that there is no problem with the data that is generating that task - it is technically correct - but that we need to support a minimum width on tasks to prevent that situation. Currently, Gantt supports a "chunk" task which I believe was intended to enforce a minimum width on tasks. However this only works if the start and end dates are identical, which I believe can be considered a bug since a truly robust enforcement of minimum width would have to compare to the start/end dates of the graph itself to determine expected size.

Graphs affected

Steps to Reproduce

  1. Render a Gantt graph
  2. Draw a task with start and end dates only 1 minute apart

Link to CodeSandbox

https://codesandbox.io/s/empty-fast-ch35j

Additional Context / Screenshots

Expected Behavior

I would expect the same minimum chunk width to get applied in this scenario

Possible Solution

Environment

@ Mentions

lj017464 commented 3 years ago

@mallorymcc looking for an update on this issue, so that we can update the client. We have a reassembly correction JIRA logged on our end https://jira2.cerner.com/browse/CCDEV-16545 that we are tracking on.

CHLD_MA, our validation partner has raised this as a go-live issue. SR 436543463

mraplumb commented 3 years ago

@lj017464 and @Matthematic We have been discussing this request and we are not planning to make any changes given concerns about the requested changes. Duration of time is an essential element to tasks on a Gantt chart and when a task has a start date/time and end date/time that are not the same, we want to make sure that that duration of time is represented in the graph. When the start and end date/times are the same, we create the chunk since we know time is not a factor.

Is the representation of time not essential to the tracks on your graph where you are wanting to increase the size? If not, can you consider making the date/times the same to get the chunk size? If duration is important, would the events concept for Gantt charts be something that is considered?

lj017464 commented 3 years ago

Yes, the representation of time is essential in our component and carbon tasks work great for us when the start and end times are the same, or when a long duration is specified: image

However, tasks with a short duration are hardly recognizable in our component, which is what the client is raising as a concern: image

Due to this, we are asking for the ability to set a minimum width for a task, such that a task cannot be less than the size of the chunk.

Would Carbon entertain adding some type of consumer configuration to allow for this?

mraplumb commented 3 years ago

@lj017464 can you provide a full example that shows what this looks like with real data for your concept and in the context of the rest of your application/view?

One of our biggest concerns is having non-equal weighted time boxes on the Gantt chart especially if it involves clinical data. In order to make an informed decision we will need to see this in context and get input from our UX teams.

lj017464 commented 3 years ago

I've attached a few examples provided by the client -- see the gantt display for the ceFAZolin order (first order) image

lj017464 commented 3 years ago

image

lj017464 commented 3 years ago

The ceFAZolin administration had an infuse over period of 3 minutes. This is being viewed in a 48 hour view in our component.

lj017464 commented 3 years ago

Hi @mraplumb -- I'm being asked by the engagement owner for an update on this particular issue. I mentioned that the UX foundations team has been engaged and that you were having further discussions on this. Are there any updates from your discussions as of last week?

mraplumb commented 3 years ago

@lj017464 I am following up with the UX team to see if there are any further updates/input from their review of what was posted.

kc4181 commented 3 years ago

Meeting notes from 8/2:

Concerns about keeping time intervals consistent and what setting a minimum size might to do that

UX will investigate visual updates that would more clearly distinguish the smaller time intervals on the graphs

Will meet again on 8/9 to review UX investigation

jeremyfuksa commented 3 years ago

UX Foundations Update: We have worked on this for the past week and have shared our thoughts with Justin Peterson. He is adding a couple of his own thoughts and will get in touch outside of this thread soon.

chrismichalewicz commented 2 years ago

@jeremyfuksa @mraplumb Testing your memory/notes on something about a year old, do you know where this issue landed? Is there still outstanding items for the dev team to consider?

Matthematic commented 2 years ago

@chrismichalewicz I don't recall ever hearing anything regarding this issue. I believe I am still waiting to see if this is something that this project can support or if we need to support it by fudging with the dates on our end.