Как я могу отобразить линейный график только с 1 точкой данных

1

У меня есть программа.net, которая позволяет пользователю выбирать диаграмму из раскрывающегося списка и диапазона данных, затем запрашивает sql для данных, чтобы отображать диаграмму, все в порядке, если они не выбирают диапазон дат, который будет возвращать только 1 значение для этой конкретной диаграммы,

Когда это происходит, так как на графике есть только 1 точка, она ничего не отображает для линейных или районных диаграмм (она работает в строке и столбце).

я подумал о том, чтобы заставить тип графа в столбце, если есть только 1 точка данных, но задавался вопросом, был ли отсутствующий параметр, который позволил бы прямую линию на линейном графике, если бы было только 1 datapoint.

хорошо основанный на идее подделать второй пункт, я придумал это, что технически делает то, что я хочу, чтобы он делал.

это называется, когда есть только 1 балл

 foreach (Series ser in mainChart.Series)
 {
     ser.Points.AddY(ser.Points[0].YValues[0]);
 }

Я думал, что может добавить, если кому-то еще понадобится, что код выше должен быть после того, как диаграмма была DataBound (был вызван.DataBind()).

  • 0
    Определение прямой - это две неконгруэнтные точки. По определению вы не можете иметь линию только с одной точкой.
  • 0
    Да, я знаю об определении линии, и да, я понимаю, что это было бы бессмысленно в виде графика, который не помогает конечному пользователю понять, что диаграмма не технически пуста, а имеет только 1 точку.
Показать ещё 6 комментариев
Теги:
asp.net-charts

3 ответа

0
Лучший ответ

Я поставил это в свой вопрос, но так как это ответ, я думаю,

это называется, когда есть только 1 балл

foreach (Series ser in mainChart.Series)
{
   ser.Points.AddY(ser.Points[0].YValues[0]);
}
0

У меня была та же проблема, и я решил ее, поместив другую точку данных с теми же значениями, поэтому она будет дублировать одно и то же значение, когда есть только одна, и вы разместите точку. Так что было бы что-то похожее на это:

this.g.Series[serieID].Points.AddXY(x, y); // <-- Duplicate this line if you only have one value
0

Определение прямой - это в основном пространство между двумя точками. Вы не можете сделать линию из одной точки, не будучи полностью произвольной.

Как только вы решите, какой угол должна быть ориентирована, просто сделайте вторую точку данных, которая подделывает линию, но вы хотите, чтобы она выглядела. Но на самом деле это звучит так, будто вы предпочтете график рассеяния, а не линейную диаграмму. Я бы предложил изменить диаграмму, которую вы используете. Вы, скорее всего, сможете рисовать линии на участке разброса, если это необходимо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню