diff options
author | Sergey Grebenshchikov <sgreben@gmail.com> | 2018-03-22 21:06:20 +0100 |
---|---|---|
committer | Sergey Grebenshchikov <sgreben@gmail.com> | 2018-03-22 21:06:20 +0100 |
commit | 524d244acde559c6ed8808207b91137c2cf261b0 (patch) | |
tree | 8a4271edcbe761d968337521d917280551898c32 /cmd/jp | |
parent | 32fd9752f0a066ad41cb558609304fd13ba6d351 (diff) |
Handle empty input, support arm641.0.1
Diffstat (limited to 'cmd/jp')
-rw-r--r-- | cmd/jp/bar.go | 12 | ||||
-rw-r--r-- | cmd/jp/line.go | 16 |
2 files changed, 18 insertions, 10 deletions
diff --git a/cmd/jp/bar.go b/cmd/jp/bar.go index be0c230..e1a622b 100644 --- a/cmd/jp/bar.go +++ b/cmd/jp/bar.go @@ -11,14 +11,18 @@ import ( func barPlotData(xvv, yvv [][]reflect.Value) (x []string, y []float64) { for _, xv := range xvv { for i := range xv { - x = append(x, fmt.Sprint(xv[i].Interface())) + if xv[i].IsValid() && xv[i].CanInterface() { + x = append(x, fmt.Sprint(xv[i].Interface())) + } } } for _, yv := range yvv { for i := range yv { - yvi, ok := yv[i].Interface().(float64) - if ok { - y = append(y, yvi) + if yv[i].IsValid() && yv[i].CanInterface() { + yvi, ok := yv[i].Interface().(float64) + if ok { + y = append(y, yvi) + } } } } diff --git a/cmd/jp/line.go b/cmd/jp/line.go index 6b75a8f..b47b38c 100644 --- a/cmd/jp/line.go +++ b/cmd/jp/line.go @@ -10,17 +10,21 @@ import ( func linePlotData(xvv, yvv [][]reflect.Value) (x, y []float64) { for _, xv := range xvv { for i := range xv { - xvi, ok := xv[i].Interface().(float64) - if ok { - x = append(x, xvi) + if xv[i].IsValid() && xv[i].CanInterface() { + xvi, ok := xv[i].Interface().(float64) + if ok { + x = append(x, xvi) + } } } } for _, yv := range yvv { for i := range yv { - yvi, ok := yv[i].Interface().(float64) - if ok { - y = append(y, yvi) + if yv[i].IsValid() && yv[i].CanInterface() { + yvi, ok := yv[i].Interface().(float64) + if ok { + y = append(y, yvi) + } } } } |